确定何时使用Jquery调用方法

时间:2014-03-04 12:24:20

标签: jquery

我有一个变量集:

var lastId = null

我只需要调用一次GetApproval方法,所以我试图像这样控制它:

if(lastId != currentId)
{
  GetAppoval(currentId);
  lastId = currentId;   

}

但是,在GetApproval和lastId分配之间发出警报显示,每次命中此代码时都是相同的,因此每次都会调用GetApproval。

为什么会这样?

修改

抱歉 - GetApproval是一个void方法,它调用c#WebMethod来填充div

修改 的 GetApprovalMethod:

function GetApproval(messageId) {
            $.ajax({
                type: "POST",
                url: "Home.aspx/GetApproval",
                cache: false,
                data: JSON.stringify({ messageId: messageId }),
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                error: function (xhr) {

                    var contentType = xhr.getResponseHeader("Content-Type");
                    if (xhr.status === 401 && contentType.toLowerCase().indexOf("text/html") >= 0) {
                        window.location.reload();
                    }
                },
                success: function (msg) {

                    $.each(msg.d, function (index, item) {
                        $('#approvaltmpl').tmpl(item).appendTo('#results');
                    });
                }
            });

        }

2 个答案:

答案 0 :(得分:0)

Replace the below code and check
if(lastId != currentId)
{
  currentId = GetAppoval(currentId);
  lastId = currentId;
}

答案 1 :(得分:0)

好的,所以最后调用$('#results')。empty();每次调用GetApproval方法之前