【问题标题】:JQuery.Validate clean way to check if a ul has at least one li itemJQuery.Validate 干净的方法来检查 ul 是否至少有一个 li 项目
【发布时间】:2012-12-21 09:22:44
【问题描述】:

在我的网页中,我有一个“AddProduct”表单。它具有产品属性(名称、价格等)字段,我使用 FineUploader 来添加图像。上传的图像作为隐藏字段添加到表单列表的 li 元素中。基本上我的 html 看起来像:

<form>
<input type="text" value="name" id="name> 
....

<ul>
</ul>

<div id="ulpoader"></div> -> this will add files as <li> elements
<button type="submit">Submit</button>
</form>

我想在提交表单之前检查 ul 是否至少有一个 li 元素(至少添加了一个图像)。我使用 ASP MVC3。我可以在客户端添加一些 javascript 来向表单添加新规则吗?

编辑: 我知道如何进行 jquery 选择...我不知道的是将其与 jquery validate 插件集成。

【问题讨论】:

  • 你在使用微软的'unobtrusive' js脚本以及jquery validate吗?

标签: javascript jquery asp.net-mvc jquery-validate


【解决方案1】:

试试这个,

if($('ul li').length > 0)
{

}

【讨论】:

  • 但是如何将此处理程序添加到 jquery validate 插件以在提交表单之前执行?
  • 你能告诉我如何将它与 jquery validate 插件集成吗?
  • 我认为你是提交处理程序会帮助你,在这里查看,docs.jquery.com/Plugins/Validation/validate#toptions
【解决方案2】:
if ($('ul').children('li').length > 0) {
    // your logic
}

【讨论】:

  • 你能告诉我如何将它与 jquery validate 插件集成吗?在哪里添加此检查?
  • 在上面显示的自定义html中,只需以这样的方式添加一个脚本标签
【解决方案3】:

你也可以试试

     if($('ul li').size())
     {

     }

【讨论】:

    【解决方案4】:

    jQuery 验证库仅验证表单字段(输入、选择、文本区域等)。您无法通过 jQuery 验证检查 ul 是否包含 li。您可以像其他用户建议的那样使用其他方式来做到这一点,

    $("form").validate({
        submitHandler: function (form) {
            if($('ul li').length === 0){
                alert("No li elements!");
                return false;
            }
        }
    });
    

    【讨论】:

    • 你的意思是 if($('ul li').length
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-06-13
    • 2011-09-07
    • 2011-07-05
    • 2012-08-06
    • 1970-01-01
    • 2011-07-27
    • 2011-06-25
    相关资源
    最近更新 更多