2

我有一个数组,里面有一些数据。该数组包含 id、名字、姓氏、电子邮件、电话。我还有五个表单输入元素。现在我想在这些元素的数组中添加数据。例如,ID 应该插入到 ID 表单字段中,名称应该插入到名称输入元素等。我该如何实现呢?

这是我的代码

insert_data_in_form: function(data) {
    var form = $("#dataform");
    var form_arr = new Array();

    form.each(function(i) {
        var form_el = form.children("input[type='textfield']");
        form_arr.push(form_el);
        console.log(data.length);
        //for(var j = 0; j < 5; j++) {
            form_el.val(data[i]);
        //}
    });
}
4

2 回答 2

2

如果数据数组中的值与表单中的值顺序相同,那么您可以这样做

insert_data_in_form: function(data) {
    var formElems = $("#dataform input[type='text']");
    formElems.each(function(i,elem) {
        $(this).val(data[i]);
        // or even better use the following faster way 
        // if they are always text boxes
        // this.value = data[i];
    });
}

演示:http: //jsfiddle.net/joycse06/AJhEW/

更新(替代方式):

您也可以使用Implicit Looping此函数.val(function(index,val)的变体来实现此目的,如下所示.val()

var insert_data_in_form =  function(data) {
    var formElems = $("#dataform input[type='text']");
    formElems.val(function(i) {
       return data[i];
    });
};

演示:http: //jsfiddle.net/joycse06/AJhEW/2/

于 2012-06-19T09:34:28.793 回答
0

埃尔-> arr:

form_arr[form_el.attr('name')] = form_el.val();

arr -> 埃尔:

form_el.val(form_arr[form_el.attr('name')]);
于 2012-06-19T09:34:36.187 回答