2013-10-24 71 views
0

我有四个字段,其中3个是接受字符和一个接受号码(4个字段中的第一个字符字段和最后一个数字字段是必需的,其余的字段是可选的)什么有史以来他们在四个领域输入的数据,它应该显示在结果字段中。如何使用jQuery将多个输入字段值反映到单个字段

在号码字段中听到过他们进入,如果他们输入要转换成一些共性,即数字“3”应显示为“NNN”

i will give one eg: 

1Field = BB 
2Field = CC 
3Field = AA 
4Field = 3 

结果=“BBCCAANNN”

HTML:

<input name="a" id="textBoxt1" ></input> 
<input name="b" id="textBoxt1" ></input> 
<input name="c" id="textBoxt1" ></input> 
<input name="d" id="textBoxt1" ></input> 
<input name="result" id="result"></input> 

的Jquery:

$(document).ready(function() { 
    $('[id^="textBox"]').keyup(function(){ 
     var result = ''; 
     $('[id^="textBox"]').each(function(){ 
      var count = parseInt($(this).val(),10) || 0; 
      result += Array(count+1).join($(this).val()); 
     }); 
     $('#result').val(result); 
    }); 
}); 

我想我可以利用这个第四个字段的值转换为字符:

 result += Array(count+1).join($(this).data('char')); // in JQUERY 

and in HTML 

<input name="d" id="textBoxt1" data-char="N" ></input> 

,但它不工作很好,我怎么能做到这一点。任何帮助将非常感谢谢谢。

+0

? – Gourav

+0

N来自哪里,并且应该只适用于最后一个字段或全部字段,因为您正在遍历代码中的所有字段。作为旁注,输入是自闭的,ID是唯一的? – adeneo

+0

http://jsfiddle.net/FYUSF/ – adeneo

回答

0

尝试他http://jsfiddle.net/pE5wS/

var comm="N"; 
$(document).ready(function() { 
    $('[id^="textBox"]').keyup(function(){ 
     var result = ''; 
     $('[id^="textBox"]:lt(3)').each(function(){ 
      result += $(this).val(); 
     }); 
     $('[id^="textBox"]:eq(3)').each(function(){ 
      var cnt=$(this).val(); 
      while(cnt!=0) 
      {result += comm; 
       cnt--; 
      } 
     }); 
     $('#result').val(result); 
    }); 
}); 
为什么你想让它如N当你为3进入
+0

感谢你的回答,但是如果我在数字中输入字符,我发现了一个问题字段(我不想允许字符,但仅用于检查它是否允许)孔浏览器将卡住...? –

+0

任何感谢,它经过一些修改后工作正常。我更新了feddle pleas看到这个http://jsfiddle.net/pE5wS/1/ –

+0

好吧让我改变它,因为你需要 – dev

相关问题