提取值并使用jquery进行分发

时间:2012-02-08 06:42:02

标签: jquery

这个问题是Collect several input fields and insert into a single field with jquery

相反

我有4个输入文本字段和一个文本字段,它应该提取其值并使用索引将它们分配到每个单独的输入中。 我期待一个反向过程(从上一个问题)到分销商的默认值,以便分发/填充到分布式文本字段中。每个值都以管道分隔。

<input type="text" value="Data 1 | Null | Data 3 | Data 4" class="distributor">

<input type="text" class="distributed">
<input type="text" class="distributed">
<input type="text" class="distributed">
<input type="text" class="distributed">

分发服务器有一个类似数组的值字符串:Data 1 |空|数据3 |数据4

从原始进程接受Null,只是为了维持PHP的爆炸和内爆过程。

因此,输入#1将以索引的方式接收数据1等,因为订单是固定的,使用名称属性似乎是多余的。

非常感谢任何提示。感谢

3 个答案:

答案 0 :(得分:2)

jsfiddle的一个例子:http://jsfiddle.net/bouillard/NWUxq/

可以扩展为空值。

答案 1 :(得分:2)

简单 - http://jsfiddle.net/akgnR/

Jquery的each()函数附带一个索引,使用它。

$(document).ready(function(){
   var arr = $(".distributor").val().split("|");
    $(".distributed").each(function(index){
        $(this).val(arr[index])
    });
});

答案 2 :(得分:2)

var valArr = ["Data 1 ", " Null ", " Data 3 ", " Data 4"];

$(":input").each(function(i){
    $(this).val(valArr[i]);
});

DEMO


var valArr = $(":input").val().split('|');

$(":input:not(:eq(0))").each(function(i){
    $(this).val(valArr[i]);
});

http://jsfiddle.net/3nigma/n6grp/10/