javascript - jQuery ui 自动完成获取其他功能中的选定项目

标签 javascript jquery user-interface autocomplete

我在 jQuery 自动完成方面遇到问题,我尝试获取输入的值,但得到了标签,但没有得到值。

  var listeClients = [{"value":1,"label":"Orange"},{"value":2,"label":"Blue"}];
  $( "#site_client_first" ).autocomplete({
     source: listeClients,
     select: function (event, ui) {
         $("#site_client_first").val(ui.item.label);
         return false;
  }

为了获取我使用的值:

$("#site_client_first").val();

https://jsfiddle.net/fyz8vL3a/

如何获取值?

提前致谢 =)

最佳答案

在自动完成的选择事件中,您将标签设置为元素 #site_client_first 的值属性,即此处 $("#site_client_first").val(ui.item.label)。因此,当您尝试通过分配 $("#site_client_first").val() 来设置跨度的innerHTML时,您将始终获得标签而不是您的item.value。

尝试下面的代码。我已将属性“itemValue”添加到 $("#site_client_first")。这将保存您的项目的值,$("#site_client_first").val() 将保存项目的标签。

在设置 span insidehtml 时,您可以分配 $("#site_client_first").attr("itemValue") 这是您的项目的值。

<input class="form-control" name="site[client]" id="site_client_first"  itemValue="100" /> 

对 HTML 更改中的上述行进行更改。 您的最终 html 如下:

<input class="form-control" name="site[client]" id="site_client_first"  itemValue="100" />
<button onclick="getValue()">Get</button>
<span id="svalue"></span>

您的脚本位于此处:

$(document).ready(function() {
var listeClients = [{ "value": 1, "label": "Orange"}, {
"value": 2,
"label": "Blue"
}];

$("#site_client_first").autocomplete({
source: listeClients,
select: function(event, ui) {
  $("#site_client_first").val(ui.item.label);
   $("#site_client_first").attr("itemValue", ui.item.value);
  return false;
}
});

})

var getValue = function() {
document.getElementById("value").innerHTML = $("#site_client_first").attr("itemValue");
}

function getValue() {
document.getElementById("value").innerHTML = $("#site_client_first").attr("itemValue");
}    

关于javascript - jQuery ui 自动完成获取其他功能中的选定项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41122741/

相关文章:

html - CSS画廊帮助UI开发

javascript - 如何在 JavaScript 中将下载的 Canvas 图像的背景色设为白色?

javascript - 数据未绑定(bind)到 angular4 typescript 中的数组?

Javascript 正则表达式和 getElementByID

javascript - 如何遍历html表格中的特定td列并替换innerText以更改日期格式?

javascript - Jquery同位素过滤机制不起作用,而是页面只是刷新

javascript - requestAnimationFrame不流畅

javascript - 知道网页上文本插入指针处的单词吗?

user-interface - Python 中的“选中所有框”复选框

java - 打开启动 Swing 界面的首选方法是什么?有什么区别?