在ASP.NET中使用ajax / jquery使用asmx Web服务?

时间:2010-08-09 05:09:13

标签: jquery asp.net ajax webmethod

您好, 我正在尝试使用Web服务,jquery和json保存数据。从网上的一些例子我得到了类似的代码,但我使用的是String而不是int:

HTML:

<div id="dialogL" title="Create a new Layer">
    <p>Enter Name:</p>
    <input id="txtValue1" type="text" size="40" />
    <p>Enter Description:</p>
    <textarea id="txtValue2" rows="4" cols="30"></textarea>
    <br />
    <input type="button" value="Create" onclick="Save()" /> 

JavaScript的:

<script type="text/javascript">
    function Save() { 
        $.ajax({
            type: "POST",
            url: "testservice1.asmx/Save",
            data: "{ 'value1': " + $("#txtValue1").val() + ", 'value2': " + $("#txtValue2").val() + "}",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: Success,
            error: Error
        });
    }

    function Success(data, status) {

    }

    function Error(request, status, error) {
        alert("Error: " + request.statusText);
    }
</script>

ASP.NET

    [WebMethod]
    public bool Save(String value1, String value2)
    {
       DoSave();
       return true;
    }

但这没有用,给了我一个内部错误信息。我做错了什么?

1 个答案:

答案 0 :(得分:2)

更改您的数据部分,而不是使用

data: "{ value1: '" + $("#txtValue1").val() + "', value2: '" + $("#txtValue2").val() + "'}",