我是jquery / javascript中的初学者。我熟悉它是如何工作的,但是自从我使用它以来已经过了一分钟,最近我已经完成了一些我认为jquery / html最适合的东西。
所以我有一个包含500个退款号码的列表,我把它们放在一个文本框中,单击一个按钮,它们当前进入一个数组,我知道这就像我提醒数组一样,我看到了我的价值观。 / p>
我需要一些指导是如何获取此数组中的数字并使其填充如下所示的文本框。
send "REFUNDNUMBER1<f1>" #This is our refund number
send "5<f1>" # This LINE will come after every single refund number
所以你可以看到,我需要追加:发送&#34;在退款号码的前面,&#34;到最后,然后添加发送&#34; 5&#34;在它下面的线。
基本上我正在尝试为某人生成一个脚本,如果这是一个错误的帮助地点我真诚地道歉,我只需要一些坚实的方向,这样我就能理解我需要做什么以及如何去做。遗憾的是,我对for循环和数组的经验非常少。和那个问题的javascript。
下面是我的html代码/ jquery
<div class="home-content">
<div class="home-heading">
<h1><em>Accounting</em> Void Refund Script Generator</h1>
</div>
<div class="row">
<div class="col-md-8">
<form>
Refund Numbers<br>
<textarea cols="38" rows="27" name="refundNumbers" id="refundNumberstxt"> </textarea>
</form>
</div>
<div class="col-sm-4">
<input type="text" name="companyNumb" size="2">
<button type="button" class="btn" id="generateButton">Generate Scripts</button>
</div>
</div>
</div>
$(document).ready(function(){
$("#generateButton").click( function(){
var txtRefundNumbers = $("#refundNumberstxt").val();
var arrayRefundNumbers = txtRefundNumbers.split('\n');
var msg = ""
var arrayVoidRefundsOutput = arrayRefundNumbers.map(function(x) {
for (var i = 0; i < arrayRefundNumbers.length; i++) {
return 'send "' + arrayRefundNumbers [i] + '"\nsend "5"\n';
}
}).join('');
alert(arrayVoidRefundsOutput)
for (var i = 0; i < arrayVoidRefundsOutput.length; i++) {
msg += arrayVoidRefundsOutput + "\n";
}
});
});
html和jquery在他们自己的文件中fyi。
在irkeninvader的帮助下,我得到了这个。我现在得到这个
发送&#34; 1&#34; 发送&#34; 5&#34; 发送&#34; 1&#34; 发送&#34; 5&#34; 发送&#34; 1&#34; 发送&#34; 5&#34; 发送&#34; 1&#34; 发送&#34; 5
这不是我想要的,我很困惑,
答案 0 :(得分:0)
map
允许您修改数组中的每个值。您应该可以使用此功能将文本添加到每个退款编号的开头和结尾。
使用map
添加相应的文字后,使用join
再次创建一个长字符串作为输出。
var output = textread.map(function(refundNum) {
return 'send "' + refundNum + '"\nsend "5"\n';
}).join('');
我认为我没有做到这一点,但你应该能够修改它以在每个退款号码之前和之后获得正确的文字。
output
变量现在应该包含您的结果。做任何你需要的东西(将其内容放入另一个texteara,记录/提醒它等)。
这会使你的点击处理程序看起来像这样:
$("#generateButton").click( function(){
var txt = $("#refundNumberstxt").val();
var textread = txt.split('\n');
var output = textread.map(function(refundNum) {
return 'send "' + refundNum + '"\nsend "5"\n';
}).join('');
alert(output);
});