我正在尝试遍历表单中所有“text”或“file”的输入。
这是我的表单标记:
<form action="" method="post" id="upload_form">
<p>
<label for="name">Skin name:</label><br />
<input type="text" name="name" />
</p>
<p>
<label for="desc">Skin description:</label><br />
<input type="text" name="desc" />
</p>
<p>
<label for="aname">Authors name:</label><br />
<input type="text" name="aname" />
</p>
<p>
<label for="aname">Skin image file:</label><br />
<input type="file" name="skin" />
</p>
<p>
<input type="submit" value="Upload" />
</p>
</form>
我基本上想要检查除提交按钮之外的所有这些输入。到目前为止,这是我的代码:
$('#upload_form').submit(function(e) {
$('#upload_form input').each(function(index) {
if( this.type == "input" ) {
}
});
});
但我知道这是错的。谁能告诉我如何迭代每个输入文本或文件输入?
感谢。
答案 0 :(得分:2)
您可以使用过滤器或不选择器来完成此操作。
我相信你可以这样做:
$('#upload_form').submit(function(e) {
$('#upload_form input').not(':submit').each(function(index) {
...
});
});
我认为这也有效:
$('#upload_form').submit(function(e) {
$('#upload_form input').filter('[type=text], [type=file]').each(function(index) {
...
});
});
答案 1 :(得分:0)
使用this.tagName
它会将标记类型作为大写字符串。