将Textarea值拆分为“所有文本框”

时间:2019-05-11 18:34:36

标签: javascript jquery

我做了一些函数,用于将textarea值拆分为所有textarea并使用文本字符串进行查询。我能够成功。但是有些问题。下面的示例。

  1. 键入Filed1字符串,例如:   
    GFSD
    65897542

  2. 然后单击“拆分”按钮。输出:将所有值分配到扩孔文本区域。

  3. GF 值放入输入字符字段。输出: 6589

  4. 我的问题是,当我输入 GF 之类的值然后输出 6589 时。而当放置 FG 时,也会输出相同的输出 6589 ,而不是 8965 。如果有解决方案,请帮助我。我希望角色严格遵守数字。

 function splitText() {
      var textAreas = [];
      //Put all of the textareas into an array for easy access
      for(let i = 1; i <= 4; i++) {
      textAreas.push(document.getElementById(`value${i}`));
      }
      //Read the text from text1 and split it at a new line
      var text = textAreas[0].value;
      var [line1, line2] = text.split(/\r?\n/)
      for(let i = 0; i < 4; i++) {
      var combinedText = line1.substring(i, i+1) + line2.substring(i*2, (i+1)*2)
      textAreas[i].value = combinedText;
      }
      }
      $('#output').focus(()=>{
      var a=document.querySelectorAll('textarea');
      var str = $('#ccMain').val();
      var first = str[0];
      var second = str[1];
      console.log(first," ", second)
      var str='';
      a.forEach(e=>e.value.includes(first)||e.value.includes(second)?str+=e.value.substr(1,e.value.length):false)
      $('#output').val(str);
      })
<html>
   <head>
      <title>Test Demo</title>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
   </head>
   <body>
      <label>Filed1 </label>
      <textarea id="value1"></textarea>
     
      <label>Filed2:</label>
      <textarea id="value2"></textarea>
      
      <label>Filed3:</label>
      <textarea id="value3"></textarea>
      
      <label>Filed4:</label>
      <textarea id="value4"></textarea>
      
      <button onclick="splitText()">Split!</button>
      <br>
      <label>Input Character:</label>
      <br>
     
      <input type="text" id="ccMain"  >
     
      <textarea id="output"></textarea>
      
   </body>
   </html>

0 个答案:

没有答案