【发布时间】:2017-05-09 19:44:16
【问题描述】:
我编写了一个用户脚本,能够自动将粘贴到文本框(由用户脚本注入页面)中的运输详细信息插入到适当的字段中。数据由另一个脚本生成,该脚本将新条目读入电子表格,其格式如下:
Name :: Simon
Email :: simon@example.com
Address 1 :: Castle 1
...
但是,有时某些数据会被分解为第二行(出于某种原因,通常只发生在电子邮件地址中),这意味着它看起来像这样:
...
Email ::
simon@example.com
...
所以,我做了它,以便用户脚本也捕获这些,读取粘贴数据的函数如下所示:
$('#paste-box').on('paste', function(){
setTimeout(function() {
var rawData = $('#paste-box').val();
var data = {};
rawData = rawData.replace(' :: \n', ' :: '); //this is the line that catches lines spilling into second line
rawData = rawData.split('\n');
for (var i = 0; i < rawData.length; i++) {
line = rawData[i].split(' :: ');
if (line.length == 2) data[line[0]] = line[1];
}
这段代码似乎工作得很好——我还没有偶然发现它没有捕捉到换行符。但我想知道:有没有更优雅和/或更可靠的方法来捕捉这些?
【问题讨论】:
标签: jquery line-breaks