Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.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
Javascript 我怎样才能得到“我的”呢;ID";Jquery Ui自动完成中选定值的_Javascript_Jquery Ui_Jquery Ui Autocomplete - Fatal编程技术网

Javascript 我怎样才能得到“我的”呢;ID";Jquery Ui自动完成中选定值的

Javascript 我怎样才能得到“我的”呢;ID";Jquery Ui自动完成中选定值的,javascript,jquery-ui,jquery-ui-autocomplete,Javascript,Jquery Ui,Jquery Ui Autocomplete,我正在使用JqueryUI自动完成。在源方法之后,我编写了select方法。在显示结果的ui.item.value中,显示我选择的值,但ui.item.id不工作,显示“未定义”。如何获取所选的值ID?请在这里找到我的代码 示例代码URL返回: 妈妈:孟买^ 说明: 3045:placeID 妈妈:地点代码 孟买:地名 ^:所有放置的数据都来自以“^”分隔的DB我已经为您的问题准备了某种解决方案。没有直接的方法可以从autocomplete获取信息(或者至少我不知道)。请在此处找到工作示例: 基

我正在使用JqueryUI自动完成。在源方法之后,我编写了select方法。在显示结果的ui.item.value中,显示我选择的值,但ui.item.id不工作,显示“未定义”。如何获取所选的值ID?请在这里找到我的代码

示例代码URL返回:

妈妈:孟买^

说明:

3045:placeID

妈妈:地点代码

孟买:地名


^:所有放置的数据都来自以“^”分隔的DB

我已经为您的问题准备了某种解决方案。没有直接的方法可以从autocomplete获取信息(或者至少我不知道)。请在此处找到工作示例:

基本上,您需要将结果ID保存在全局数组中,该数组稍后将在select中访问

希望有帮助

编辑:您基本上需要添加3个元素


  • Before
    for(indx=0;indx
    ui.item.id
    未定义的
    ,因为您没有将它添加到autocomplete的源代码中的每个
    项中。您可以通过在AJAX调用中调整
    succeess
    函数来实现这一点:

    success: function(data) {
    
        fromPlacesNamesList = new Array();
        var f = data.split("^");
        for (indx = 0; indx < f.length - 1; indx++) {
            var f1 = f[indx].split(':');
            fromPlacesNamesList[indx] = { label: f1[2], id: f1[0] };
        }
        response(fromPlacesNamesList);
        return false;
    } //success
    
    成功:函数(数据){
    fromPlacesNameList=新数组();
    var f=数据分割(“^”);
    对于(indx=0;indx
    此外,您应该从for循环外部调用
    response


    更新示例:

    问题太抽象了。你能粘贴你的代码吗?我的代码链接请提供从applicationURL(ajax)返回的示例返回值示例代码URL返回:3045:MUM:mumbi^描述:3045:placeID MUM:Place code mumbi:Place Name。^:所有位置均来自以“^”分隔的DB试试这个,var item_id=ui.item.id;然后对这两个警报使用item_id,看看这是否有效,也许是其他东西在某种程度上改变了代码?谢谢Marek,这对您的逻辑来说很好。但是显示结果需要几秒钟的时间。这里我有一个疑问,我能否将源代码命名为“result.jsp”。我的要求是用户可以在文本框中输入placeName或Placecode,在这两种情况下,我都必须填充placeName。其他请建议我,好的示例。我不确定我是否理解您试图实现的目标。是的,您可以在其中使用result.jsp并动态生成内容。我使用静态返回,因为我没有准备好。如果您可以主持可以通过internet访问的api我可以在本例中使用它(经过一些调整,因为跨域会有问题)。另一件事是,如果您想更改输入中的值(例如,通过向其添加ID)没有问题……但正如我之前告诉你的,我不确定你的目标是什么。如果你能再进一步描述一下的话。我有一个web应用程序包含home.html作为主页。这个页面有“From-Place”作为自动完成的文本框。在此字段中,用户可以输入地名或地名代码,在这两种情况下,我必须填充地名。但地名(数据)将来自不同的应用程序。这些PlaceNames与PlaceID、PlaceName、PlaceCode、PlaceName混合。我目前的代码运行良好。但在文本框中输入minLength 3个字符后,鼠标将闪烁2-5秒,然后显示建议。感谢Andrew,将响应写入for循环外有什么区别吗?在我放置在内部工作正常,但自动建议需要2-5秒的时间。谢谢Andrew,将响应写入for循环外有什么区别吗?在我放置在内部工作正常之前,但自动建议需要2-5秒的时间来填充。如果使用“NEL”搜索地名,自动建议显示“NEGLORE”,我还有另一个问题“,'NELORE'…为什么它显示起始NEG…?我检查了我的java类响应来自起始NEL…。但是自动完成显示NEG…NEL…。@hari:您正在构建一个建议列表,以发送给小部件。这意味着您必须让
    for
    循环运行并填充该列表。在循环内调用
    response
    将在每次迭代时通知小部件建议,我认为这不是您想要的。至于建议的问题,可能是服务器端(Java)的问题代码。感谢Andrew在调用for循环外部的响应后,结果立即填充。在发生之前,我希望生成每个迭代响应,可能这就是鼠标闪烁的原因(循环内部迭代)最终结果显示出来。但在IE-6组合框中,值与自动建议值重叠。@hari:我不知道你的意思。你能在一个例子中重现这个吗?