<html>
<head>
<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
alert('hi'+$("input:text").val());
$("input:not(:empty)").val("sdfdf");
});
});
</script>
</head>
<body>
<input type="text" value="aa" />
<input type="text" value="" />
<input type="text" value="aa" />
<button>Click me</button>
</body>
</html>
我正在尝试使用jquery访问空文本框并为其分配值hello .. 但它不起作用。
提前致谢
答案 0 :(得分:27)
:empty
检查元素是否包含子元素。 input
元素不能包含子元素。
如果要测试input
元素的值是空白的:
$(document).ready(function(){
$("button").click(function(){
$("input").filter(function() {
return this.value.length !== 0;
}).val("sdfdf");
});
});
我们获取了所有input
元素,然后对其进行过滤,以便仅包含value
属性不是""
的元素。
答案 1 :(得分:5)
您可以为您的任务使用其他选择器:
$("input[value='']").val("sdfdf");
答案 2 :(得分:4)
的jQuery( ':空') 描述:选择所有没有子元素的元素(包括文本 节点)。
来自http://api.jquery.com/empty-selector/。因此:empty
没有按照你的想法做到。
请查看此答案https://stackoverflow.com/a/1299468/138023以获得解决方案。
答案 3 :(得分:0)
你可以在里面使用.each:
if( $(this).val().length === 0 ) {
$(this).parents('p').addClass('warning');
}