【问题标题】:jquery Autocomplete click eventjquery 自动完成点击事件
【发布时间】:2012-06-29 22:07:40
【问题描述】:
<div id="display">
    <div align="left" class="display_box">
        <a class="test" href="#">
            <img style="width:25px; float:left; margin-right:6px" src="user_img/gow.jpg">
        </a>
        <input type="hidden" id="uid" value="3">
        <b>b</b>ack&nbsp;<b>b</b>ack<br>
        <span style="font-size:9px; color:#999999">back</span>
    </div>
    <div align="left" class="display_box">
        <a class="test" href="#">
            <img style="width:25px; float:left; margin-right:6px" src="user_img/gow.jpg">
        </a>
        <input type="hidden" id="uid" value="3">
        <b>b</b>ack&nbsp;<b>b</b>ack<br>
        <span style="font-size:9px; color:#999999">back</span>
    </div>
</div>

我正在使用 facebook 等缩略图中的图像制作此自动完成搜索功能,并在 ajax 调用后将其作为 html 获取。 我想要做的是,如果用户单击具有类 display_box 的任何 div,我想获取 div 中隐藏字段的值...

我尝试了这段代码,但如果我使用#display click 事件捕获但它不会捕获点击事件,但这是针对整个 div 的。

$('.display_box').click(function() {
    var id =$(this).find('input[type=hidden]').val();
});    

【问题讨论】:

  • 您是如何创建这些#display 块的?动态的? fiddle 也有助于可视化您的代码:)

标签: php jquery


【解决方案1】:

确保您正在添加 jQuery 文件并且 $ 没有冲突。您可以在编写 js 代码之前使用此行。

$ = jQuery.noConflict();

【讨论】:

    【解决方案2】:

    您的代码似乎有效。 看看这个小提琴http://jsfiddle.net/3JK4c/

    您是否将代码放入文档就绪函数中?

    $(document).ready(function() {
        .... code here ....
    });
    

    【讨论】:

      【解决方案3】:

      终于发现了问题,实际上它是将点击事件与显示框绑定,但是当程序最初运行或直到你搜索时不存在显示框,所以我所做的是我在成功调用 ajax 时绑定了点击事件,现在它的工作......我希望它有所帮助。实际上,这些 div display_box 是在用户搜索来自数据库的内容时动态生成的,这里是帮助任何人的完整代码

                    $.ajax({
                    type: "POST",
                   url: "search.php",
                   data: dataString,
                   cache: false,
                   success: function(html)
                 {
      
                  if(html !="")
                  {
                  $("#display").html(html).show();
      
          $('.display_box').click(function(){
      
      
      
      $('#temp').val($(this).find('input[type=hidden]').val());
          $('#searchbox').val($(this).find('.name').text());
          $('#display').fadeOut('slow');
      
      
      
      
          });
                 }
            }
      
      
      
      
                  });
      

      【讨论】:

        猜你喜欢
        • 2013-10-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-04-30
        • 1970-01-01
        • 2015-06-06
        • 1970-01-01
        • 2012-03-28
        相关资源
        最近更新 更多