Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquery中的动态验证? $(文档).ready(函数(){ $('a[rel=addhint]')。单击(函数(){ var html='Hint'; html+='; $('div#hintTextContainer').append(html); bindDelHintAll(); 返回false; });_Jquery - Fatal编程技术网

jquery中的动态验证? $(文档).ready(函数(){ $('a[rel=addhint]')。单击(函数(){ var html='Hint'; html+='; $('div#hintTextContainer').append(html); bindDelHintAll(); 返回false; });

jquery中的动态验证? $(文档).ready(函数(){ $('a[rel=addhint]')。单击(函数(){ var html='Hint'; html+='; $('div#hintTextContainer').append(html); bindDelHintAll(); 返回false; });,jquery,Jquery,我想知道什么时候新的文本区域包括必填字段的附加值,并且最大长度也将应用于它。不确定您是否熟悉jQuery验证插件 这是一个非常强大的库,各种各样的好东西。对于您提出的示例来说,这可能有些过头了。它没有太多关于动态添加内容的内容,但是您可以调整框架来做您想要的事情 除此之外,还有一个非常棒的textarea maxlength插件,所以你甚至不需要验证它! 只要确保用户在文本区域中有内容,只需检查 $(document).ready(function(){ $('a[rel=addhint]

我想知道什么时候新的文本区域包括必填字段的附加值,并且最大长度也将应用于它。

不确定您是否熟悉jQuery验证插件

这是一个非常强大的库,各种各样的好东西。对于您提出的示例来说,这可能有些过头了。它没有太多关于动态添加内容的内容,但是您可以调整框架来做您想要的事情

除此之外,还有一个非常棒的textarea maxlength插件,所以你甚至不需要验证它!

只要确保用户在文本区域中有内容,只需检查

$(document).ready(function(){
 $('a[rel=addhint]').click(function(){
  var html='<div><label>Hint</label>';
  html+='<span class="input"><input type="text" size="30" class="text" name="hint"/><a href="#" rel="delhint">delete</a></span><br class="clear" /></div>';
  $('div#hintTextContainer').append(html);
  bindDelHintAll();
  return false;
 });

提交时。

从代码外观上看,您正在页面视图期间动态构建表单。为了动态实现表单验证系统,您需要创建输入的功能,以便插入表单验证系统

一种解决方案是向字段添加一个属性,该属性将由验证函数读取

jQuery('textarea.newlyAdded').val().lenght > 0  

$(函数(){
$(“#testform”).submit(函数(){
var self=$(这是);
self.find(“输入”).each(函数(){
var validation=jQuery.parseJSON($(this.attr(“validation参数”));
if(validation.req){alert(“required”);}
}); 
返回false;
});
});

如果您查看上面的示例,您会看到它创建了一个表单。在提交处理程序中,它接受表单并循环表单上的每个输入,获取validation params属性并将string属性转换为JSON对象。然后它检查一个特定字段,您可以轻松地将自己的验证添加到该字段中。

basi我在我的页面中有一个this引用来调用动态创建文本字段。但是每次创建字段的名称都是hint。我想使用java脚本检查这个新创建的字段。如frmvalidator.addValidation(“hint”,“req”);frmvalidator.addValidation(“hint”,“maxlen=100”);但由于每次名称都是提示,因此检查不适用。新创建的文本字段之间的差异如何,或者如何分配不同的名称。通常,两个输入字段不应共享一个名称。因此,您应该创建一个迭代器。在示例中,假设您添加了一个class=“hintfield”。您可以执行hintfields=$(“#formid”).find(“.hintfield”).length以获取提示字段的数量,然后使正在创建的字段的名称等于hint_&hintfields+1。但实际上,我认为最好的方法是添加一个属性,这是一个更面向对象的解决方案。validation params=“{req:true,max length:100}”validation params=“{max length:10,min length:0}”不工作我用一个工作代码示例编辑了上面的示例。希望它能帮助Mansoor。基本上,我在页面中有一个this引用来调用动态创建文本字段。但是每次创建字段的名称都是hint。我想使用java脚本检查这个新创建的字段。如frmvalidator.addValidation(“hint”,“req”);frmvalidator.addValidation(“hint”,“maxlen=100”);但由于每次名称都是hint,因此检查不适用。新创建的文本字段有何区别,或者如何指定不同的名称。
<form name="testform" id="testform" method="post">
  <input type="text" name="hint" validation-params='{ "req" : true, "max-length" : 10 }'>
  <input type="submit">
</form>

<script>
  $(function() {
    $("#testform").submit(function() {
      var self = $(this);
      self.find("input").each(function() {
        var validation = jQuery.parseJSON($(this).attr("validation-params"));
        if (validation.req) { alert("required"); }
      }); 
      return false;
    });
  });
</script>