Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 从自动完成中删除字符_Jquery - Fatal编程技术网

Jquery 从自动完成中删除字符

Jquery 从自动完成中删除字符,jquery,Jquery,当我在自动完成上单击某个内容时,我试图删除,之后(包括)的所有内容 到目前为止,我已经尝试过: select: function(event, ui) { var str = $("#site_search").val(ui.item.label); this.value = str.split(",")[0]; return false; 不幸的是,我得到的只是:TypeError:str.split不是一个函数 编辑:应该说得更清楚,在我的自动完成列表中,它会显示如下结果:

当我在自动完成上单击某个内容时,我试图删除
之后(包括)的所有内容

到目前为止,我已经尝试过:

select: function(event, ui) { 
var str = $("#site_search").val(ui.item.label); 
this.value = str.split(",")[0];     
return false;
不幸的是,我得到的只是:
TypeError:str.split不是一个函数

编辑:应该说得更清楚,在我的自动完成列表中,它会显示如下结果:

你好,世界


当选择某个内容时,在文本字段中只应显示
Hello

基本上,这一行
var str=$(“#site_search”).val(ui.item.label)是错误的。因为
.val('somevalue')
返回的jQuery对象没有
拆分方法

您应改为使用:

var str = $("#site_search").val();
为了清楚起见 您需要使用
val()

$(“#站点搜索”).val(ui.item.label)
将返回jQuery对象,而不是字符串


我听不懂这句话<代码>var str=$(“#站点搜索”).val(ui.item.label)
try
this.value=str.val().split(“,”[0]
var str
不是实际的字符串,而是元素
$(“#site_search”)
。通过使用该行,我了解了它的实际功能。它设置元素的值,然后将元素本身返回给变量。相当混乱。谢谢@PranavCBalan这么做,如果你想把它作为答案发布,我会接受它。实际上,
.val()
正是为了返回对象的值。它返回对象本身,因为在同一行中OP正在设置该值。@MelanciaUK啊!对我没有使用“somevalue”部分,也没有把那行一分为二。一个设置值,另一个获取值并输入变量。这会使它更容易阅读。
.val(); //getter; returns String
.val('somevalue'); //setter; returns the jQuery element 
select: function(event, ui) { 
var str = $("#site_search").val(ui.item.label); 
this.value = str.val().split(",")[0];
//            --^--     
return false;