发现html()返回的值,并不包含input的value的值, value得到的是空字符串。
原因,DOM在这html渲染的时候value这个attribute仅仅是代表input的初始值。
后面,如果需要拿到新的html带最新value的需要用js手动的设置attribute value为新值。
比如用$().attr('value', '123);
测试代码如下
$(function(){
$("#div-1 [name=field-0]").attr('x', 123);
//$("#div-1 :input").val(7);
});
function test(){
var fieldValue0 = $("#div-1 [name=field-0]").val();
$("#div-1 [name=field-0]").attr('value', fieldValue0);
var str=$("#div-1").html();
alert(str);
}
按下test按钮的时候,会alert的html包含input里面手动输入的新值.