jquery事件没有被触发

时间:2014-01-27 07:06:11

标签: jquery ajax jquery-ui

我关注的设计是: 1.使用按钮搜索字段 2.当用户搜索我有AJAX呼叫的东西时。代码是

 jQuery(document).ready(function($) {
 $('.button').click(function() {
            $.ajax({  
          type: "GET",  
          url: "searchsong.php",  
          data: data, 
          dataType: "html",
          success: function(res, status, xhr) {
          if(res.indexOf("Sorry. We dint find anything meaningful for you")!=-1){
           showError(res);
          }
          else{
          $("#result-msg").hide();
          $("#load-div").hide();
           $("#result-div").show(); 
           $("#result-div").html(res); 
           }

          },
          error: function(obj,text,error) {
   } 
        });  
        return false;  

});
  1. 在AJAX Call(searchsong.php)

    $ Q = $ _ GET [ 'VQ'];    $ param =“http://gdata.youtube.com/feeds/api/videos/-/ $ q / Music?orderby = relevant& start-index = 1& max-results = 10& strict = true”;    要求($ DOCUMENT_ROOT。“songtable.php”);

  2. 在songtable.php中,我基本上创建了一个包含搜索结果的表格,并为每一行添加链接以执行某些操作,例如:

                    echo "<td width=200 class='linkcolummn'><a href='javascript:{}' class='bt-fs-dialog' onclick='toggleCheckbox(\"{$id}\",\"{$song_name}\",\"suggest\")'><span>Suggest</span></a></td>";
    
  3. 这个“bt-fs-dialog”的动作在我的主要php页面(第一个)中定义,如:

    $( “BT-FS-对话”)。fSelector({   onSubmit:function(response){     //示例响应用法

    myfren = response;
    console.log(response);
    $( "#dialog" ).dialog( "open" );
    
    // postToFriend();
    
    },
    onPreStart: function(){    
    
    }
    
    });
    
  4. 现在问题是当我点击搜索结果中的链接时没有发生任何动作,它甚至没有进入该功能。

    当我简单地将链接放在同一个文件中时,它可以正常工作。我无法理解这是什么问题。

    最终守则:

    jQuery(document).ready(function($) {
    
     $(".bt-fs-dialog").fSelector({
      onSubmit: function(response){
        // example response usage
    
        myfren = response;
        console.log(response);
       $( "#dialog" ).dialog( "open" );
    
       // postToFriend();
    
      },
      onPreStart: function(){    
    
     }
    
     });
    
    
     $('.button').click(function() {
    
      $("#load-div").show();
      $('.error').hide(); 
    
                $.ajax({  
              type: "GET",  
              url: "searchsong.php",  
              data: data, 
              dataType: "html",
              success: function(res, status, xhr) {
              if(res.indexOf("Sorry. We dint find anything meaningful for you")!=-1){
              console.log("go to error");
               showError(res);
              }
              else{
              console.log("pass");
              $("#result-msg").hide();
              $("#load-div").hide();
               $("#result-div").show(); 
               $("#result-div").html(res); 
               }
    
              },
              error: function(obj,text,error) {
       } 
            });  
            return false;  
    
    });
    
    });
    

    有人可以帮忙吗。

1 个答案:

答案 0 :(得分:0)

$(document).ajaxStop(function() {
    $(".bt-fs-dialog").fSelector({ ... });
});

或只需在此处fSelector

致电... success: function(res, status, xhr) { ... } ...