Javascript mvc中带参数的ajax调用函数

Javascript mvc中带参数的ajax调用函数,javascript,jquery,ajax,asp.net-mvc,asp.net-ajax,Javascript,Jquery,Ajax,Asp.net Mvc,Asp.net Ajax,我对此很陌生,我正在尝试使用ajax从视图调用控制器函数,这是我的控制器 public ActionResult EditSiteGetContact(int? id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } using (var db = SiteUtil.NewDb)

我对此很陌生,我正在尝试使用ajax从视图调用控制器函数,这是我的控制器

public ActionResult EditSiteGetContact(int? id)

    {
        if (id == null)
        {
            return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
        }

        using (var db = SiteUtil.NewDb)
        {

            var owner = db.Contacts.Include(o => o.Id).FirstOrDefault(o => o.Id == id);
            if (owner == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            var orgViewModel = OrgViewModel.ToViewModel(owner);
            return View("Edit", orgViewModel);
        }
    }
这是我想要显示数据的视图

<div class="form-group" id="alanTest">
       <label class="control-label col-md-2">Contact Person</label>
       <div class="col-md-6 form-inline">
         @Html.TextBoxFor(model => model.Owner.Name, new { @class = "form-control", style = "width:200px", type = "text" })
         <img src="~/Images/help-icon.png" class="tooltips" id="ContactPerson_Tooltip" title="lol">
         @Html.ValidationMessageFor(model => model.Owner.Name)
       </div>
</div>

我收到“错误”消息。

在EditSiteGetContact(int?id)之前添加[HttpPost]属性

在ajax函数中更改
var contactId=@Model.Org.contactId;至var contactId=“@Model.Org.contactId”

请参阅下面的代码。这可能对你有帮助

$("#alanTest").ready(function(){
     var alanURL = "@Url.Action("EditSiteGetContact","Org")";
     var contactId = "@Model.Org.ContactId";

    $.ajax({
        type:"POST",
        url:alanURL,

        data:{
            id:contactId
        },
        success:function(data){
            alert(data);
        },
        error: function(){
            alert("error");
        }      

        });
});

我收到“错误”信息什么错误信息@StephenMuecke,
警报(“错误”)OP谈论那个错误message@Div,OP需要解释他们在浏览器中遇到的错误console@StephenMuecke是的,我同意你的看法。但我只是澄清一下。打开浏览器控制台,在“网络”选项卡中检查错误和响应。并调试您的代码。你在用这种方法吗。归还什么?
$("#alanTest").ready(function(){
     var alanURL = "@Url.Action("EditSiteGetContact","Org")";
     var contactId = "@Model.Org.ContactId";

    $.ajax({
        type:"POST",
        url:alanURL,

        data:{
            id:contactId
        },
        success:function(data){
            alert(data);
        },
        error: function(){
            alert("error");
        }      

        });
});