我正在创建一个ajax实时搜索,我使用的是填充函数。所以当我点击搜索时弹出的单词时,它会填充到另一个输入表单中。但我希望当它填满它,而不是取代旧的词。
例如,我有input1和input2。input1用于搜索,input2用于填充我选择的单词。例如,我已经从word1中选择了input1。word1将填补input2。
像这样的input2 = word1
但是,当我在input1中搜索另一个单词时,我希望我选择的单词不是替换input2,而是添加它。例如,我选择word2,所以在input2中
就像这样input2 = word1, word2
这里是我的现场搜索脚本
function fill(Value) {
$('#tag_list').val(Value);
$('#display').hide();
}
$(document).ready(function() {
$("#tag").keyup(function() {
$('#display').show();
var name = $('#tag').val();
if (name == "") {
$("#display").html("");
$("#display").hide();
}
else {
$.ajax({
type: "POST",
url: "../cari/tag.php",
data: {
search: name
},
success: function(html) {
$("#display").html(html).show();
}
});
}
});
});我的tag.php代码
<div class="result" onclick='fill("<?php echo $caris['id_t']; ?>,")'>发布于 2018-09-03 05:33:21
您可以附加如下所示的值
function fill(Value) {
var $tagList = $('#tag_list');
var previousVal = $tagList.val();
if(previousVal) {
previousVal += ", ";
}
$tagList.val(previousVal + Value);
$('#display').hide();
}发布于 2018-09-03 05:41:36
您可以使用加法分配:
加法赋值运算符将右操作数的值添加到变量中,并将结果分配给变量。这两个操作数的类型决定加法赋值操作符的行为。添加或级联是可能的。有关详细信息,请参阅加法运算符。
语法
Operator: x += y
Meaning: x = x + y就你的情况而言:
var query = '';
$('#search').on('click',function(){
fill();
});
function fill() {
query += $('#input1').val() + ',';
$('#input2').val(query.slice(0,-1));
/* The slice function will remove the last caractere from string ',' */
}<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" name="input1" id="input1">
<input type="text" name="input2" id="input2">
<button id="search">search</button>
https://stackoverflow.com/questions/52143554
复制相似问题