jQuery - 从数组中设置输入数组值

时间:2018-03-29 03:38:53

标签: javascript jquery arrays ajax input

form output image

表单有3个变量:useredu_id[] 隐藏类型useredu_qual[] 选择类型useredu_detail[] 文本框< / em>的

我尝试将值设置为使用使用jQuery ajax生成的JavaScript数组,代码如下所示。但是不存储值

var xx = 0;
var fieldHTML = ''
+ '<div class="form-row field_group">' 
+ $(".field_group_copy").html() 
+ '</div>';
$.each(data.result_qual, function(key, val1) {
    var detail = data.result_detail[key];
    $('input[name="useredu_id[]"]').eq(xx).val(key);
    $('input[name="useredu_qual[]"]').eq(xx).val(val1);
    $('input[name="useredu_detail[]"]').eq(xx).val(detail);
    $('body').find('.field_group:last').after(fieldHTML);
    ++xx;
});

1 个答案:

答案 0 :(得分:0)

processData函数将处理响应。我添加了一个测试JSON。您可以通过ajaz成功方法调用该函数。如果它是给定的格式。否则,根据响应,您需要进行一些小的更改

10s 10y
$(function(){
  // let data be your json response from ajax call
  var data = [
    {id:1, qual:"BTECH", detail:"Engineering"},
    {id:2, qual:"MTECH", detail:"Master Engineering"},
    {id:3, qual:"BSC", detail:"Science"},
  ];  
  processData(data);
});

function processData(data){  
  $.each(data, function(index, value) {
    var fieldHTML = ''
      + '<div class="form-row field_group">' 
      + $(".field_group_copy").html() 
      + '</div>';  
    $('body').find('.data-container').append(fieldHTML);
    $('input[name="useredu_id[]"]').eq(index+1).val(value.id);
    $('select[name="useredu_qual[]"]').eq(index+1).val(value.qual);
    $('textarea[name="useredu_detail[]"]').eq(index+1).val(value.detail);    
  });
}
.hide{
  display:none;
}