2013-11-28 64 views
1

我正在使用AJAX和ASP.NET Web方法加载一些内容。以下是对Ajax代码:Ajax在启用URL重新路由后停止工作

var pageIndex = 1; 
var pageCount; 

$(window).scroll(function() { 
    if ($(window).scrollTop() == $(document).height() - $(window).height()) { 
     GetRecords(); 
    } 
}); 
function GetRecords() { 
    pageIndex++; 
    if (pageIndex == 2 || pageIndex <= pageCount) { 
     $("#loader").show(); 
     $.ajax({ 
      type: "POST", 
      url: "TopicList.aspx/GetTopics", 
      data: '{pageIndex: ' + pageIndex + '}', 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: OnSuccess, 
      failure: function (response) { 
       alert(response.d); 
      }, 
      error: function (response) { 
       alert(response.d); 
      } 

     } 
     ); 

    } 
} 
function OnSuccess(response) { 
    var xmlDoc = $.parseXML(response.d); 
    var xml = $(xmlDoc); 
    pageCount = parseInt(xml.find("PageCount").eq(0).find("PageCount").text()); 
    var topics = xml.find("Topics"); 

    topics.each(function() { 
     var table = $("#dvTopics table").eq(0).clone(true); 

     var topic = $(this); 
     $.ajax({ 
      type: "POST", 
      url: "TopicList.aspx/LoadTopicRow", 
      data: "{message: '" + topic.find("desid").text() + "'}", 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function (r) { 
       table.append(r.d); 
      } 
     }); 
     $("#dvTopics").append(table); 

    }); 

    $("#loader").hide(); 
} 

的代码工作正常,直到我启用了URL重写,改变了规则包含页网页的方法来ContentViewer/{view}(即TopicList.aspx)。

现在web方法不被AJAX调用。

请帮忙!

回答

0

继承人在黑暗中一枪,因为你没有包含任何错误的细节。尝试从改变你的网址 :

url: "TopicList.aspx/LoadTopicRow", 

url: "TopicList/LoadTopicRow", 
相关问题