-4

このコード用に外部 JS ファイルを作成しました。

$(document).ready(function () {
  $(document).on("click", '.siteusemore', function ()
  //$('.siteusemore').on("click",function() 
  {
    var ID = $(this).attr("id");
    if (ID) {
      $("##siteusemore" + ID).html('<img src="/images/processing.gif" />');
      $.ajax({
        type: "POST",
        url: "/ajax_results.cfm?rpp=#url.rpp#&ajax_type=my_profile&status_action=#url.status_action#&comments_action=#url.comments_action#&myscript=#urlencodedformat(arguments.myscript)#",
        data: "lastmsg=" + ID,
        cache: false,
        success: function (html) {
          $("ol##siteuseupdates").append(html);
          $("##siteusemore" + ID).remove();

        }
      });
    } else {
      $(".siteusemorebox").html('The End');
    }
    return false;
  });

  $(document).on("click", '.teamsusemore', function ()
  //$('.teamsusemore').live("click",function() 
  {
    var ID = $(this).attr("id");
    if (ID) {
      $("##teamsusemore" + ID).html('<img src="/images/processing.gif" />');
      $.ajax({
        type: "POST",
        url: "/ajax_results.cfm?rpp=#url.rpp#&ajax_type=my_teams&myscript=#urlencodedformat(arguments.myscript)#",
        data: "lastmsg=" + ID,
        cache: false,
        success: function (html) {
          $("table##grouplisting").append(html);
          $("##teamsusemore" + ID).remove();

        }
      });
    } else {
      $(".teamsusemorebox").html('No more records.');
    }
    return false;
  });

  $(document).on("click", '.teamsusemore', function ()
  //$('.leaguesusemore').live("click",function() 
  {
    var ID = $(this).attr("id");
    if (ID) {
      $("##leaguesusemore" + ID).html('<img src="/images/processing.gif" />');
      $.ajax({
        type: "POST",
        url: "/ajax_results.cfm?rpp=#url.rpp#&ajax_type=my_leagues&myscript=#urlencodedformat(arguments.myscript)#",
        data: "lastmsg=" + ID,
        cache: false,
        success: function (html) {
          $("table##leaguelisting").append(html);
          $("##leaguesusemore" + ID).remove();

        }
      });
    } else {
      $(".leaguesusemorebox").html('No more records.');
    }
    return false;
  });
});

私がそれを呼び出すと、jquery 1.7.2.min.jsでスクリプトエラーがスローされます

行: 3 エラー: 構文エラー、認識できない式: #

スクリプトの目的は、ページで発生する 3 つの個別の ajax イベントすべてを対象にすることです。

<div id="siteusemore#evaluate(currentpage + 1)#" class="siteusemorebox">    
    <a href="##" class="siteusemore" id="#evaluate(currentpage + 1)#">View more items</a>
</div>
4

1 に答える 1

2

セレクターに多くのハッシュがあると問題が発生します。問題は、jQuery が「#」を使用してその ID を持つものを探すことです。jQuery の観点からそれを読み取ろうとすると、siteusemore の ID と evaluate(currentpage + 1) の ID と ID を持つ何かを見つけるように指示しようとしています。最後は意味がありません。ID からハッシュと括弧を削除して、もう一度やり直します。

于 2013-01-23T23:59:15.060 に答える