使用C#将包含HTML页面的数据发送到webMethod

时间:2015-06-04 05:59:03

标签: ajax webmethod

我需要将html文件保存在我项目的一个文件夹中。为此 使用jquery我得到了一个变量中页面的完整html(var content = $(" #pageContent"。)。html())。我需要使用ajax调用将此html内容发送到Web方法以保存在某个位置。为此我使用

  

$。ajax({url:' getpage.asmx / getpage',输入:' POST',数据:{data:content},   成功:{function(res){}},错误:{function(er){}}});

执行上述方法我收到内部服务器错误,并且我不确定是否可以将带有html标签的字符串发送到Web方法。 需要一些方法来

1 个答案:

答案 0 :(得分:0)

我在你的问题中看到:

  

执行上述方法我遇到 内部服务器错误

我不使用C#,但这意味着当您收到C#中的帖子时遇到问题。 可能是因为语法错误或类似的东西。

我在PHP中执行AJAX请求时遇到此错误,因为我忘记了';'以var为例。

您可以查看C#脚本并尝试找出问题所在。 如果你没有语法错误,或者其他什么, 尝试发送一个没有html的字符串,看看你的脚本是否有效。

如果是,请尝试对您的内容进行编码:

$.ajax({
    url:'getpage.asmx/getpage',
    //encode your content
    type:'POST', data:{ data: encodeURIComponent(content) },
    //text || json to set what type you will get from your C# script
    datatype: 'text',
    //callback if success res will be a text in this case
    success: function(res) {
        console.log(res);
    },
    //callback if error er will be a text in this case
    error: function(er) {
        console.log(er);
    }
});

我也错误地删除了success: { function(res){} } ,,这是没有必要的

如果您的脚本使用此脚本,您可以像这样存储html内容, 当你需要它时,你可以在追加之前在你的javascript中decodeURIComponent();

<强> 之证件:

encodeURIComponent();

http://www.w3schools.com/jsref/jsref_encodeURIComponent.asp

decodeURIComponent();

http://www.w3schools.com/jsref/jsref_decodeuricomponent.asp