来自 div 值的 Javascript 自动完成源动态不起作用

标签 javascript php autocomplete

我正在 php 文件上编写一个 javascript 函数来执行自动完成。我必须从 div 值获取输入,就像

value1
value2
... 

输入的 div 值是动态的,并且会随着某些文本的点击事件而变化。因此,每次用户单击这些值时,我都会调用一个名为 test() 的函数,该函数会重置自动完成功能。

我正在编写以下代码来获取值,并在编辑后作为源发送到自动完成功能。

Select Value: <input id="autocomplete">

<script type="text/javascript">

        function test()
 {

             var div_values = document.getElementById("id_div_values").innerHTML;
             var div_val_arr = div_values.split("</li>");
             var search_val ="[";


                  for (var j = 0; j < div_val_arr.length-1; j++)
                  {                                                      
                     search_val = search_val+"\""+div_val_arr[j].replace("<li>","")+"\"";

                   }
              search_val = search_val+"]";

            $("#autocomplete").autocomplete({
               source: search_val
            });           

         }
      </script>

但它不起作用。我已经检查了 div 值,它正常出现并以数组形式形成,但它不起作用。如果我将源代码设置为

source: ["value1","value2","value3","value4"];

然后它就可以正常工作了。我没有明白我做错的地方。 预先感谢您提出的宝贵建议。

最佳答案

javascript

$(document).ready(function() {
var div_val_arr = [];
$("#id_div_values li").each(function() {
    div_val_arr.push($(this).text());
});
$('#autocomplete').on('focus click touchstart',function() {
$( "#autocomplete" ).autocomplete({
source: div_val_arr
});
});
});

html

    <div id="id_div_values">
        <ul>
    <li>some value</li>
    <li>another value</li>
    <li>value3</li>
    <li>value4</li>
    <li>value5</li></ul>
    </div>

<input type="text" title="search" id="autocomplete">

fiddle http://jsfiddle.net/arfrbzbz/1/

关于来自 div 值的 Javascript 自动完成源动态不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27814315/

相关文章:

javascript - 当我使用 Masonry 时,Bootstrap 折叠面板相互重叠

javascript - React 组件中未触发 React 事件

php - 反向外键 Doctrine

php 在另一个查询中使用上一个查询的结果

php - 如何设置从第三方导入的内置评论框的样式?

java - 异常 java.lang.NoSuchMethodError : org. apache.wicket.AttributeModifier.append(Ljava/lang/String;Ljava/io/Serializable;)

javascript - 使用 Angular + Play 框架 (Java) 进行 SPA 身份验证

javascript - 使用 Bluebird.js 和 Twitter 流的 promise 和流

javascript - Jquery 自动完成,如何搜索单词而不是字符串

WordPress 中的 jQuery 自动完成和特殊字符