我使用jquery并尝试更改属性" value = Hello" to" value = admin"在输入标签中。但我不明白为什么我不能这样做。当我运行我的示例时,我不会在Google Chrome调试器中获得结果。
!DOCTYPE html>
<html>
<head>
<script src="jquery-1.10.2.js"></script>
<script>
$(document).ready(function () {
$("input[type=text]").val("admin");
alert( $("input[type=text]").val());
});
</script>
</head>
<body>
<span>Login</span><input type="text" value="Hello" /><br />
<span>Password</span><input type="password" />
</body>
</html>
答案 0 :(得分:1)
尝试
$("input[type=text]").attr('value', 'admin')
虽然你的方法应该已经有效了,但如果你不能让.val()
工作,这是另一种尝试。使用.attr()
,您可以手动编辑输入中的值属性,这是您想要的。
如果您想查看更改,只需console.log( $("input[type=text]").val() )
答案 1 :(得分:0)
jQuery的.val()
函数引用元素的值 property ,而不是标记的实际属性。您可以在this question的答案中查看有关属性与属性的更多详细信息。对于您的情况,重要的是,当您通过Chrome的开发工具查看DOM时,您会看到实际的属性,而不是从它们派生的属性。除了通过控制台执行javascript(使用与alert()
语句相同的概念)之外,我没有通过chrome的开发工具查看属性的直接方式。