【问题标题】:Jquery validation with multi field具有多字段的 Jquery 验证
【发布时间】:2016-05-17 07:39:41
【问题描述】:

我有一个包含三个选择框和一个隐藏字段的表单。我想验证从三个选择框的值创建的字符串是否包含在隐藏字段中。

例子。

<form>
    <select name="s1">
        <option value="1">1</option>
        <option value="2">2</option>
    </select>
    <select name="s2">
        <option value="1">1</option>
        <option value="2">2</option>
    </select>
    <select name="s3">
        <option value="1">1</option>
        <option value="2">1</option>
    </select>
    <input type="hidden" name="result" value="#123#245#" />
</form>

我想通过 jquery 验证来验证 result.val 中的 join(s1.val, s2.val, s3.val)。

我该怎么办?我知道我需要创建自定义规则。

请帮帮我。

【问题讨论】:

  • 意思是你想连接select的值然后和隐藏字段比较?
  • 为选项添加结束标签。
  • @KrupeshKotecha:是的,这就是我想要的。
  • 好酷。你自己试过吗?
  • 是的,现在我尝试通过为 jquery-validation 添加自定义规则并将此规则应用于隐藏字段来实现它。

标签: jquery validation


【解决方案1】:

正如上面评论中提到的那样

html代码:

<form>
    <select name="s1">
         <option value="1">
         <option selected value="2">
    </select>

    <select name="s2">
        <option selected value="1">
        <option value="2">
    </select>

    <select name="s3">
    <option value="1">
    <option selected value="2">
  </select>
  <input type="hidden" name="result" id="hiddenVal" value="#212#" />
</form>

javaScript 或 jquery 代码:

var str = "#";
$('form select').each(function(){
   str = str + $(this).val();
});

str +="#";
alert(str);
if($("#hiddenVal").val() == str){
   alert("yes value from select and value from hidden field is equal");
}

jsFiddle

【讨论】:

  • 我需要的不正确,我必须使用jquery验证插件来验证它。
【解决方案2】:
var concate_string = "";
$('form select').each(function(){
concate_string = concate_string +"#"+$(this).val();
});

concate_string = concate_string +"#";
if($('[name="result"]:eq(0)')==concate_string){
//your action ?
}

【讨论】:

  • 是的,我知道那样,但我想使用 jquery-validation。
  • 虽然此代码可能会回答问题,但提供有关 why 和/或 如何 回答问题的额外上下文将显着改善其长期价值。请edit你的答案添加一些解释。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多