在输入中输入内容并单击按钮后,“.val()”返回一个空值,知道为什么吗?
HTML 代码:
<div class="mainClass">
<div class="class1" >
<div class="class2">
<h3>Settings 1</h3>
<label>
<span>Text 1:</span>
<input type="text" name="text">
</label>
<label>
<span>Text 2:</span>
<input type="text" name="text2">
</label>
</div>
</div>
<div class="class3" >
<div class="class4">
<h3>Settings 2</h3>
<label>
<span>Text 1:</span>
<input type="text" name="text">
</label>
<label>
<span>Text 2:</span>
<input type="text" name="text2">
</label>
</div>
</div>
</div>
<button id="Go" class="go" >GO </button>
JAVASCRIPT代码:
$('#Go').on('click', function() {
alert($('.class1 input').val()); //return an empty value
$('.class1 input').val("test");
alert($('.class1 input').val()); //return test
});
编辑:
即使这样也行不通,这里我只有一个输入,所以我不能输入错误的输入:
<div class="mainClass">
<div class="class1" >
<div class="class2">
<h3>Settings 1</h3>
<label>
<span>Text 1:</span>
<input type="text" name="text">
</label>
</div>
</div>
</div>
<button id="Go" class="go" >GO </button>
编辑2:我发现了问题的开始......
当我这样做时:
$('.class1 input').each(function () {
alert($(this).attr('name') + " value:" +$(this).val() );
});
我得到两个这样的“警报”:
text value:
text value:myinputText
所以在我的 HTML 中为一个创建了两个,第一个是空的,第二个运行良好!仔细查看我的页面,我发现所有元素都是重复的(<select,field, input...
)
知道这怎么可能吗?我是否两次调用我的 html 文件?我所有的代码都在一个弹出窗口中(我不知道它是否有帮助)(我是 Javascript 和 jQuery 的新手)
谢谢