我试图将html表单的输入存储在一个简单的数组中。 我找到了一些简单的教程,但我的代码仍然无法正常工作,也许我只是看不到错误。 这就是我制作数组的方式:
var person = [];
person[0] = $('#email').val();
person[1] = $('#password').val();
这是我的HTML,我有跨度#demo,我检查了数组中是否有值:
<input id="email" type="email" name="email" required="required"/><span id="errorfld"></span>
<input id="password" name="password1" type="password" required="required"/><span id="result"></span><span id="demo">text</span>
然后我有一个函数,在焦点上调用:
function demo(){
$('#demo').text(person[0]);
}
我是否必须在其他地方搜索我的错?
答案 0 :(得分:0)
一种方法是使用$.serializeArray()
从表单中获取所有值。
实施例
$('#form').on('submit', function(event) {
event.preventDefault();
var data = $(this).serializeArray();
$('#demo').text(data[0].value);
});
答案 1 :(得分:0)
如果您只是在页面加载document.ready
时获取值,则输入字段仍为空白。你想要像这样使用它们时需要检索值...
$(function(){
function updateDemo(){
var person = [];
person[0] = $('#email').val();
person[1] = $('#password').val();
$('#demo').text(JSON.stringify(person));
}
$('#email').on('blur',updateDemo);
$('#password').on('blur',updateDemo);
});
每次按下键时,您还可以使用其他侦听器(如keyup
)来更新值。