我有以下表格
<form action="test.php" id="loginform" name="loginform" method="post">
<input name="title[]" id="title1" type="text" value="" tabindex="1" />
<input name="title[]" id="title2" type="text" value="" tabindex="2" />
<input name="title[]" id="title3" type="text" value="" tabindex="3" />
<input type="submit" name="submit" value="Submit" id="submit" tabindex="4" />
</form>
我可以使用此代码获取元素名称,但不能获取其ID。
$('#loginform').bind('submit', function() {
var elements = $(this).serializeArray();
$.each(elements, function(i, element) {
var temp = $('#' + element['name']);
var name = this.name; alert(name);
var id = this.id; alert(id); ///even id = this.attr("id"); not getting
var value = this.value;
(temp.val() == '') ? temp.css({'background': '#FFC4C4', 'border': '1px solid #F00'}) : temp.removeClass('hightlight');
});
return false;
});
答案 0 :(得分:1)
为您更新答案:
此代码:
var id = $(this).id;alert(id);
应该成为这个:
var id = $('input[name="' + name + '"]').attr("id");
alert(id);
请参阅此处的代码:http://jsfiddle.net/Ct8zf/5/
请注意,根据.serializeArray()文档,序列化的唯一元素是名称和值。
希望这有帮助。