Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
获取第一个空输入字段的名称返回;“未定义”;(jquery)_Jquery_Input_Undefined - Fatal编程技术网

获取第一个空输入字段的名称返回;“未定义”;(jquery)

获取第一个空输入字段的名称返回;“未定义”;(jquery),jquery,input,undefined,Jquery,Input,Undefined,在获取第一个空输入字段的属性名时,我遇到了一个问题。不明白为什么他每次都返回“未定义” <input type="text" name="test_1" value="not empty"> <input type="text" name="test_2"> <input type="text" name="test_3" value="not empty"> <input type="text" name="test_4"> <script

在获取第一个空输入字段的属性名时,我遇到了一个问题。不明白为什么他每次都返回“未定义”

<input type="text" name="test_1" value="not empty">
<input type="text" name="test_2">
<input type="text" name="test_3" value="not empty">
<input type="text" name="test_4">
<script>alert($('input[value=""]').first().attr("name"));</script>

警报($('input[value=”“]).first().attr(“name”);

非常感谢您的帮助。

您要查找的目标元素没有
属性,因此没有与
[value=”“]
选择器匹配的元素。您需要包含该属性,那么代码就可以正常工作了:

<input type="text" name="test_1" value="not empty">
<input type="text" name="test_2" value="">
<input type="text" name="test_3" value="not empty">
<input type="text" name="test_4" value="">

您要查找的目标元素没有
属性,因此没有与
[value=”“]
选择器匹配的元素。您需要包含该属性,那么代码就可以正常工作了:

<input type="text" name="test_1" value="not empty">
<input type="text" name="test_2" value="">
<input type="text" name="test_3" value="not empty">
<input type="text" name="test_4" value="">

您可以使用
:而不是[value]
如下所示

alert($('input:not([value])).first().attr(“name”)

您可以使用
:而不是[value]
如下所示

alert($('input:not([value])).first().attr(“name”)


非常感谢,伙计,我怀疑我的理智,有没有解释为什么value=”“不是输入的默认值?您必须显式地将其放入标记中?任何元素上都没有默认属性(尽管可能需要某些属性来保持HTML的有效性),而基础DomeElement的属性将始终存在,即使它们为null。在
value=“”
value=null
之间存在差异。如果它不在那里,那么它就不在那里,因为它不在那里。@Rorymcrossan抱歉-我在评论中回答了为什么value=”“与value=null不一样的问题。我没有检查你的答案。啊,我明白了。不管怎样,它改进了逻辑:)多谢了,伙计,我质疑我的理智,有没有解释为什么value=”“不是输入的默认值?您必须显式地将其放入标记中?任何元素上都没有默认属性(尽管可能需要某些属性来保持HTML的有效性),而基础DomeElement的属性将始终存在,即使它们为null。在
value=“”
value=null
之间存在差异。如果它不在那里,那么它就不在那里,因为它不在那里。@Rorymcrossan抱歉-我在评论中回答了为什么value=”“与value=null不一样的问题。我没有检查你的答案。啊,我明白了。不管怎样,它改进了逻辑:)非常感谢Azim提供的解决方案,但我在RoryYou的另一行代码中找到了答案。我认为我的代码比其他代码简单@Egalegal是的,它很简单,但在我的项目中不起作用,我会记住它,非常感谢您的时间和帮助非常感谢Azim的解决方案,但我在RoryYou的其他代码行中找到了答案,欢迎您。我认为我的代码比其他代码简单@Egalegal是的,它很简单,但在我的项目中不起作用,我会记住它,非常感谢你的时间和帮助