以下是简单的HTML:
<input type="text" class="form-control" id="user[0].first_name" name="user[0].first_name" placeholder="First Name">
这是JS:
emailIndex = 0;
for (var i = 0; i <= emailIndex; i++) {
data["user[" + i + "].first_name"] = $("#user[" + i + "].first_name").val();
}
如果我尝试打印ID 用户[0] .first_name 返回:未定义
那里有什么问题?
谢谢!
答案 0 :(得分:1)
在上面的代码中,执行后#user[" + i + "].first_name
将为#user[0].first_name
此处,jquery
不会检查id = user[0].first_name
但它会将其视为id = user[0]
和class = first_name
所以,你不会在jquery中得到正确的结果,但你可以用javascript
答案 1 :(得分:0)
在Javascript中,你不能给id =“user [0] .first_name”。
相反,尝试根据用户数量
使用jQuery创建'input'元素$.each(users, function(index, user){
$(body).append('<input id="'+user.first_name+'"></input>');
});
OR
$(body).append('<input id="'+user[0].first_name+'"></input>');
现在
你可以通过JS代码获得它的val()你写了
答案 2 :(得分:0)
这有效!
for (var i = 0; i <= emailIndex; i++) {
alert($('#user_'+i.toString()+'_first_name').val());
}
我们需要先将整数更改为字符串。 也不要忘记从id中取出点操作符(参见Nagesh的回答)
快乐的编码。