javascript - jQuery 克隆后 Chrome 错误地使表单输入无效

标签 javascript jquery google-chrome dom

我在 Chrome 中克隆时遇到问题。请注意,这在 Firefox 中似乎不会发生。

当我动态创建一个输入并克隆它,然后附加到表单时,它将不会验证,但是当我检查Node的validityState对象时 表示一切都很好。

我知道克隆没有多大意义,但它是我所需要的减少的测试用例。有什么解决方案可以确保 DOM 数据正确复制吗?

Javascript:

$('<input type="text" required="required" />').val('08').clone().appendTo('#form1');
$('<input type="text" required="required" />').val('08').appendTo('#form2');

HTML:

<form id="form1"><input type="submit" value="Click me"/></form>
<form id="form2"><input type="submit" value="Click me"/></form>

fiddle 引用:http://jsfiddle.net/x7aRt/1/

最佳答案

看起来像是 chrome(webkit?)中的一个错误,或者可能与 jQuery 有关。

要验证输入,看起来您需要在克隆后重新设置值,没有多大意义,但是......

$('<input type="text" required="required" />').val('08').clone().val(function(){return this.value}).appendTo('#form1');

关于javascript - jQuery 克隆后 Chrome 错误地使表单输入无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20637206/

相关文章:

javascript - 如何使用 php 从 sql 查询中获取完整结果,然后使用 javascript 显示该结果

javascript - 显示/隐藏所选选项的 div

javascript - 如何使用 javascript 或 jquery 导出 html 表并作为工作表附加到现有 Excel 中

jQuery:使用字符串应用插件

java - 如果传输状态为 206 部分内容,Chrome 将无法加载视频

javascript - 计算机进入休眠状态后,Chrome/Javascript SetTimeout 卡住了

html - 在哪里可以找到以前访问过的网页的缓存文件——谷歌浏览器

javascript - 按 Enter 键创建表格行

javascript - 在动态下拉选择中插入选项元素

javascript - Highcharts 中 3D 条形图的不同深度