繁体   English   中英

jQuery ajax调用未调用服务器端方法

[英]jquery ajax call is not calling the server side method

我正在使用jquery ajax post方法调用服务器端方法。但是没有被调用。下面是我的代码。

JS

var templateName = $("#txtTemplateName").val().trim(),
htmlHeader = $("#txtHtmlHead").val().trim(),
header = $("#txtHeader").val().trim(),
footer = $("#txtFooter").val().trim()

var templateData = {
    templateName: templateName,
    htmlHeader: htmlHeader,
    header: header,
    footer: footer       
};

我创建了javascript对象

$.ajax({
    type: "POST",
    url: "template_brow.aspx/SaveTemplate",
    data: JSON.stringify(templateData),
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function(result) {
        alert(result.d);
        $("#divTemplate").find("input[type=text]").val('');
        $("#divTemplate").find("textarea").val('');
    },
    error: function() {
        alert("Error while calling the server!");
    }
});

在服务器端,我使用上述属性创建了一个自定义类

[WebMethod(EnableSession = true)]
public static string SaveTemplate(TemplateVariables oTemplateVariables)
{
----

}

TemplateVariables是定制类

有人可以帮我吗

var templateName = $("#txtTemplateName").val().trim(),
htmlHeader = $("#txtHtmlHead").val().trim(),
header = $("#txtHeader").val().trim(),
footer = $("#txtFooter").val().trim()

var templateData = {
    templateName: templateName,
    htmlHeader: htmlHeader,
    header: header,
    footer: footer       
};

在这段代码之后,编写:

var strData={}; 
strData.oTemplateVariables = templateData;

然后在ajax调用中编写“ data:JSON.stringify(strData)”,而不是“ data:JSON.stringify(templateData)”,如下所示:

$.ajax({
    type: "POST",
    url: "template_brow.aspx/SaveTemplate",
    data: JSON.stringify(strData),
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: function(result) {
        alert(result.d);
        $("#divTemplate").find("input[type=text]").val('');
        $("#divTemplate").find("textarea").val('');
    },
    error: function() {
        alert("Error while calling the server!");
    }
});

它会工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM