首页 > 解决方案 > 从单个文本框中分离值

问题描述

需要一点帮助。

下面的脚本从文本框中选择值并将其添加到 URL 并打开它。

例子:

文本框值:

one
two
three
Four
Five
Six
Seven

输出网址: https ://www.google.com/search?q=one+two+three+four+five+six+seven

我需要的帮助:

我希望文本框值再次根据分隔符拆分为两个变量,例如逗号(脚本已经根据换行符拆分文本框值)并将值存储在两个不同的变量中。

例子:

文本框值:

one,two
three,four
five,six

该值应基于“,”进行拆分

例子:

val1= one;
val2= two;

输出网址: https ://www.google.com/search?q=val1+val2

这应该在一个循环中,以便一旦执行第一组值,它就会移动到下一个:

例子:

val1= three;
val2= four;

输出网址: https ://www.google.com/search?q=val1+val2

$(function() {
  $("#text1").click(function() {
    if ($('#textbox1').val() != '') {
      var search_container1 = $("#textbox1").val().split(" ");
      for (k = 0; k < search_container1.length; k++) {
        search_container1[k] = search_container1[k].replace(/\s/gi, "+");
      }
      var srcbox1 = "val1234";

      if (srcbox1 == "val1234") {
        var search_val1234 = "";
        for (var i = 0; i < search_container1.length; i++) {
          search_val1234 = search_container1[i]; {
            window.open("https://www.google.com/search?client=firefox-b-d&q=" + search_val1234 + "");
          }
        }

      }
    } else if ($('#textbox1').val() == '') {
      alert("Enter Keyword");
    }
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="container">

  <div class="col-sm">
    <div class="card">
      <div class="card-body">
        <center><a>Deal IDs</a></center>
        <br>
        <textarea id="textbox1" cols="5" rows="7"></textarea><br>
        <center><br><button id="text1" class="btn btn-warning btn-block ">Submit</button></center>
      </div>
    </div>
  </div>
</div>

标签: javascripthtmltextarea

解决方案


我认为你可以先形成一个数组。由于您通过 URL 发送它,因此您需要执行 encodeURIComponent。

function getValues(val, delimiter) {
  var results = [];
  val.split("\n").forEach(function(line) {
    results.push(line.split(delimiter).map(function(token, i) {
      return encodeURIComponent(token);
    }));
  });
  return results
}

var arrayOfArray = getValues("one,two\nthree,four\nfive,six", ',');
arrayOfArray.forEach(function(arr) {
  console.log("https://www.google.com/search?q=" + arr.join("+"));
});

推荐阅读