javascript 不适用于链接

标签 javascript jquery

我有这个html:

   <a style="display:block; padding:100%; text-decoration: none;" href="http://google.com " class="Jasmin" id="target_site_to_visit">

<span data-app-id="88" class="btn" id="visit_site" style="right:22px; top:65px; padding:5px;z-index: -99999;">VISIT SITE</span>

</a>

还有这个 jquery:

      (function($){
            $('#target_site_to_visit').live('click',function(event){
            event.preventDefault();
           var appName=$('#target_site_to_visit').attr('class');
          $.post('db/update_site_viewed.php',{ name:appName }, function(data){

              throw new Error("AppName: "+appName);

          },'html').error(function(data){

             throw new Error("Error: "+data.responseText);
          });
          document.location.href=$('#target_site_to_visit').attr('href');
      }); })(jQuery);

无论何时单击按钮,都存在问题.. 会执行 post 方法,将数据放入数据库。但只有当 jquery 中的最后一行不存在时才会发生这种情况:document.location.href ..重定向会以某种方式影响帖子..并且可能不会提供要执行的帖子方法..导致没有记录被插入到数据库中(或者在其他post方法中不执行)..是否可能是原因..原因重定向确实影响了post方法的执行

最佳答案

这将解决您的问题

<script type="text/javascript">
        $('#target_site_to_visit').live("click",function(event){
        event.preventDefault();
       var appName=$('#target_site_to_visit').attr('class');
      $.post('db/update_site_viewed.php',{ name:appName }, function(data){

     //    console.log("AppName: "+appName);

      },'html').error(function(data){

       //  console.log("Error: "+data.responseText);
      });
    //  document.location.href=$('#target_site_to_visit').attr('href');
  }); 

但使用 .on() 而不是 .live().Like

<script type="text/javascript">
            $(document).on("click",'#target_site_to_visit',function(event){
            event.preventDefault();
           var appName=$('#target_site_to_visit').attr('class');
          $.post('db/update_site_viewed.php',{ name:appName }, function(data){

         //    console.log("AppName: "+appName);

          },'html').error(function(data){

           //  console.log("Error: "+data.responseText);
          });
        //  document.location.href=$('#target_site_to_visit').attr('href');
      }); 
   </script>

关于javascript 不适用于链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11452230/

相关文章:

javascript - 这是一个 JS 无限循环吗?

javascript - highchart 和 .clone() 的问题

javascript - CSS 选择器相当于backbone.js 中的jQuery.find?

javascript - 如何使用 jQuery 从一组 div 中获取 div 元素的索引和范围

javascript - 在 AngularJS 中使用来自不同 Controller 的 $scope 函数

javascript - 如何更改从数据表导出的 Excel 文件的字体大小?

javascript - 为什么不推荐在 chai 中检查 lengthOf() 数组?

javascript - CSS结束动画?

javascript - 在 keyup 事件上使用 JavaScript 添加千位分隔符

jquery - 单击 jquery 按钮 + 发送不带表单的数据 - 书签