我有两个输入都包含由'|'分隔的数字列表。 我需要检查第一个输入中的任何id是否存在于第二个输入中,如果它没有将它添加到第三个输入中。
<input type="text" id="access_ids" value="13|16|24|25|31|33|36|42|43|45|48|49|58|59|61|8" /><br />
<input type="text" id="replied_ids" value="8|9|16" /><br />
<input type="text" id="not_replied_ids" value="" />
$(document).ready(function(){
var acc_ids = $('#access_ids').text();
var acc_array = acc_ids.split('|');
for (var i = 0; i < acc_array.length; i++) {
if (acc_array[i].indexOf($('#replied_ids')) > -1) {
$('#not_replied_ids').text(acc_array[i].join('|'));
return;
}
}
});
我做了一个jsfiddle: https://jsfiddle.net/sheferd/nhj63fbu/1/
由于
答案 0 :(得分:1)
你的语法错误,例如:$('#access_ids').text()
- &gt; $('#access_ids').val()
...您可以尝试按照代码:
$(document).ready(function(){
var acc_ids = $('#access_ids').val();
var acc_array = acc_ids.split('|');
var not_replied_arr = [];
for (var i = 0; i < acc_array.length; i++) {
if ($('#replied_ids').val().indexOf(acc_array[i]) == -1) {
not_replied_arr.push(acc_array[i]);
$("#not_replied_ids").val(not_replied_arr.join("|"));
return;
}
}
});