脚本不在mvc4中工作

时间:2014-10-24 09:06:36

标签: javascript asp.net asp.net-mvc drop-down-menu

我使用脚本在我的mvc项目中使用web服务绑定我的下拉列表,我的webservice存在于app_code中,但它没有调用,而且我的脚本中调用了错误

$(document).ready(function () {
$.ajax({
    type: "POST",
    contentType: "application/json,charset=utf-8",
    url: "/App_Code/WebService1.asmx.cs/loadcountry",
    data: "{}",
    datatype: "json",
    sucess: function (Result) {
        alert("s");
        $("#country").empty().append($("<option></option>").val("0").html("Select Country"));
        $("#state").empty().append($("<option></option>").val("0").html("Select State"));
        $each(Result.d, function () {
            $("#country").append($("<option></option>").val(this['Value']).html(this['Text']));
        });
    },
    error: function (Result) {
        alert("1");
    }
});
});

任何人都可以告诉我我要去哪里,提前谢谢

5 个答案:

答案 0 :(得分:2)

通过以下方式更改网址属性:

url: "~/App_Code/WebService1.asmx/loadcountry"

编辑:

sucess success(正如Dethariel在答案中所说)。

答案 1 :(得分:1)

这可能是行sucess上的拼写错误(应该是success - 加倍c)吗?

答案 2 :(得分:0)

我认为您的通话中存在一些问题,第一个是Opec

提到的问题

另一个是您创建网络服务的地方,here告诉您原因。

我建议您将Web服务放在项目根目录或其他文件夹中。然后将您的电话改为:

url: "~/MyNewFolder/WebService1.asmx/loadcountry"

答案 3 :(得分:0)

  1. 更改网址以调用WebService1.asmx,而不是WebService1.asmx.cs
  2. loadcountry。它是否具有WebMethod属性?
  3. 根据名称loadcountry,我认为它应该是GET方法,而不是POST。

答案 4 :(得分:0)

有点猜测,但我认为你需要'GET'而不是'POST'。在我看来,您的网络服务只是提供国家/地区列表,并且不接受发布到其中的任何数据。

您可以在Chrome的高级休息客户端等休息客户端中测试您的网络服务