使用jQuery JSON函数在选择特定下拉项时填充textarea

时间:2016-08-08 14:11:42

标签: javascript jquery html json populate

我听起来可能完全是菜鸟,但你可以帮助我吗?

我有一个带有下拉选择的表单,并且在很多文本区域框内。

我需要什么:
当选择特定选项时,我想用一些文本填充所有文本区域(使用JSON)。

代码:

HTML

<label>name</label>
<select>
<option value="0" data-num="">name lastname</option>
<option value="1" data-num="">name lastname</option>
<option value="2" data-num="">name lastname</option>
<option value="3" data-num="">name lastname</option>
</select>


<textarea name="name"></textarea>
<textarea name="applicant"></textarea>
<textarea name="applicant_en"></textarea>
<textarea name="email"></textarea>
<textarea name="vat"></textarea>
<textarea name="rc"></textarea>

JSON数据

{
"id":["1","2"],
"name":["John Doe","John notDoe"],
"applicant":["lorem ipsum","second"],
"applicant_en":["one","two"],
"email":["mail","mail_two"],
"vat":[61388963,4684645456],
"rc":["123456/0123","87986454/554"]
}"

我尝试了一些东西,但我放弃了..有人可以帮助我吗?

1 个答案:

答案 0 :(得分:2)

<select id="some_id">
<option value="0" data-num="">name lastname</option>
<option value="1" data-num="">name lastname</option>
<option value="2" data-num="">name lastname</option>
<option value="3" data-num="">name lastname</option>
</select>

JS:

$("#some_id").on('change',function(){
    if($(this).val()==1){

       $("input[name='applicant']).val("fetched from json");

    }
   ///else continue with other values
})

编辑: 为你的html提供一些id或class。

<textarea name="applicant" id="applicant"></textarea>

在JS中:

populate('#MyForm', $.parseJSON(data));



function populate(strFormId,jsonData){

    $(strFormId+' #applicant').val(jsonData.applicant[0] +' '+jsonData.applicant[1]);

//do in the same way for other DOM element.
}