jQuery - 为什么attr()不会一直更新屏幕上的显示值

时间:2013-11-04 21:18:01

标签: jquery html browser

这里有两行jQuery

$("input[name=displayPrice1]").attr("value", vPrice);
$("input[name=displayPrice1]").val(vPrice);

这两行都会更新text类型的输入值。

这是一个小提琴 http://jsfiddle.net/fZm7w/

请按以下步骤操作:
1.页面加载后:单击设置attr() - 空输入将取值150
2.单击追加行并再次单击set attr() - 两个输入都将达到150
3.手动更改两个输入中的值 - 例如500和100 4. 单击设置attr() - 显示的任何值都不会更改,但value属性将更改
5.单击set val() - 两个显示的值都将被更新,但不会像预期的那样更新attr值

为什么set attr()在输入为空时设置屏幕上的值,而不是在用户填充内容时设置?

1 个答案:

答案 0 :(得分:1)

.val()给出输入字段

中的实际值

.attr()仅获取输入字段来源中的属性值