这个问题在这里已有答案:
创建了一个新的input元素,并尝试使用jquery中的data方法添加data属性,但是无法追加该值
var txtBox = $('<input/>', {
"class": "myCustomClass",
"type": "text"
});
$('#wrapper').append(txtBox);
txtBox.data('index', '1');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id='wrapper'>Input Text Box : </div>
var txtBox = $('<input/>', {
"class" : "myCustomClass",
"type" :"text",
"data-index":""
});
$('#wrapper').append(txtBox);
txtBox.attr('data-index','ddddddddd');
该守则工作正常我认为您正在寻找的代码是txtBox.attr('data-index', '1');
有关.data为什么不能按预期工作的更多信息,请查看此答案here