有类似csv的字符串:
var ret = "21-01-2015|0|50|31-01-2015|0|0|5000000";
然后分隔符是“|”。
有HTML文本字段:
<input type="text" name="P_FIN_DECLARATION" id="P_FIN_DECLARATION" class="input-small datepick validate[required]"/>
<input type="text" name="P_TAUX_PENALITE" id="P_TAUX_PENALITE" maxlength="5" class="input-mini validate[required]"/>
<input type="text" name="P_TAUX_MAJORATION" id="P_TAUX_MAJORATION" maxlength="5" class="input-mini validate[required]"/>
<input type="text" name="P_LIMITE_PAIEMENT" id="P_LIMITE_PAIEMENT" class="input-small datepick validate[required]"/>
<input type="text" name="P_TAUX_1" id="P_TAUX_1" maxlength="5" class="input-mini validate[required]"/>
<input type="text" name="P_TAUX_2" id="P_TAUX_2" maxlength="5" class="input-mini validate[required]"/>
<input type="text" name="P_PLAFOND" id="P_PLAFOND" maxlength="50" class="input-small validate[required]"/>
字符串中的每个数据都与每个文本字段的序列完全匹配:例如,21-01-2015用于P_FIN_DECLARATION,依此类推。
如何从字符串的数据部分设置文本字段的值?
答案 0 :(得分:2)
试试这个
var ret = "21-01-2015|0|50|31-01-2015|0|0|5000000".split('|');
// split function splits a string into an array
$('input').each(function (index) {
$(this).val(ret[index]);
});
答案 1 :(得分:2)
<强> P.S。你不需要JQuery来完成这个简单的任务!!
您可以这样做:
var ret = "21-01-2015|0|50|31-01-2015|0|0|5000000";
var fieldArr = document.getElementsByTagName('input');
var retArr = ret.split("|");
for(var i=0; i<fieldArr.length; i++) {
var field = fieldArr[i];
field.value = retArr[i];
}
答案 2 :(得分:0)
尝试使用.split()
来实现与php爆炸相同的效果,并使用$.each
轻松迭代数组,
var elems = $('input[type="text"]');
$.each("21-01-2015|0|50|31-01-2015|0|0|5000000".split('|'), function(i,val){
elems.eq(i).val(val)
});
或者你可以这样做,
var arr = "21-01-2015|0|50|31-01-2015|0|0|5000000".split('|');
$('input[type="text"]').val(function(i){
return arr[i];
});