在页面加载时获取数据

时间:2011-09-08 14:59:57

标签: asp.net jquery

我正在尝试在DOM中准备好元素后获取数据。我正在尝试使用JQUERY的加载函数,但是我收到一条消息.load()不是函数。

在页面加载期间使用ajax获取元素数据(在我的情况下是div)时是否有最佳实践?我正在使用ASP.NET并在后面的代码中调用web方法。

这是我的ajax / jquery代码:

$(document).ready(function () {

      $(function () {

          $("[id$=divArea]").load()(function () {

              $.ajax({
                  type: "POST",
                  url: "apage.aspx/Role",
                  data: "{}",
                  contentType: "application/json; charset=utf-8",
                  dataType: "json",
                  async: false,
                  success: function (response) {
                      alert("got data from Role");
                  },
                  error: function (data) {
                      alert("failed to get data from Role");
                  }

              });               

          });

});

感谢。

2 个答案:

答案 0 :(得分:0)

我认为问题在于代码本身,请尝试像这样的代码

$(document).ready(function (){

    $("[id$=divArea]").load('apage.aspx/Role',function(response, status, xhr) {
        if (status == "error") {
             var msg = "Sorry but there was an error: ";
             $("#error").html(msg + xhr.status + " " + xhr.statusText);
        })

});

答案 1 :(得分:0)

$(document).ready()用于在DOM准备好后调用代码 - 因此,如果我理解正确,则不需要包含$("[id$=divArea]").load()(function () {

它应该像这样工作:

$(document).ready(function () {

  $(function () {

          $.ajax({
              type: "POST",
              url: "apage.aspx/Role",
              data: "{}",
              contentType: "application/json; charset=utf-8",
              dataType: "json",
              async: false,
              success: function (response) {
                  alert("got data from Role");
              },
              error: function (data) {
                  alert("failed to get data from Role");
              }

          });               

      });

});

顺便说一下 - 它可能是粘贴错误,但您也省略了所发布代码中的$(document).ready结束});