jQuery 调用 Controller 未命中断点

标签 jquery .net asp.net-mvc-4

在 ASP .NET MVC 4 中,我尝试更新页面上的列表,而不执行实际的表单提交,也不刷新页面。

单击按钮后,我想调用 CheckPartNumber 方法中的列表数据,但永远不会命中断点。不会抛出任何错误。我可以启动调试器;在 JavaScript 中,但没有发现错误。

  <script type="text/javascript">
    function getParts(searchString) {
        debugger;
        $.ajax({
            url: '@Url.Action("CheckPartNumber", "PartController")',
    type: 'GET',
    dataType: 'json',
    // we set cache: false because GET requests are often cached by browsers
    // IE is particularly aggressive in that respect
    cache: false,
    data: { searchString: searchString },
    success: function (part) {
        $('#PartNumber').val(part.PartNumber);
        //$('#LastName').val(person.LastName);
    }
});
}
</script>

标记

    <div class="editor-field">
        <input type="text" id="part" />
        <input type="button" value="Search" onclick="getParts('test')"  /> 
    </div>

Controller

public class PartController : Controller
{
    private InventurWebEntities db = new InventurWebEntities();

    [HttpGet]
    public ActionResult CheckPartNumber(string searchString)
    {
        var parts = db.Parts.Take(10);
        return Json(parts, JsonRequestBehavior.AllowGet);
    }
}

最佳答案

您正在构建错误的 URL。使用时Url.Action您需要删除 Controller 后缀。所以这个:

@Url.Action("CheckPartNumber", "PartController")

变成这样:

@Url.Action("CheckPartNumber", "Part")

关于jQuery 调用 Controller 未命中断点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27063064/

相关文章:

jquery - 当用户开始在 jquery 中输入文本时,如何使 TEXTBOX 中的文本变为大写字母

c# - 多次使用 block ,这段代码安全吗?

.net - ASP.NET Web 窗体和 ASP.NET 网页

.net - 在读/写操作中,属性与支持字段之间是否存在性能差异?

c# - 从联系页面返回索引页面

c# - 拆分逗号以将多行插入数据库 (ASP.NET MVC)

deployment - 更新 Web 角色应用程序 (Azure) 而不删除用户数据

javascript - jquery - 如何确定一个 div 是否改变了它的高度或任何 css 属性?

javascript - 试图防止违约

javascript - 我们如何在不引用 XHTML 页面中的函数的情况下运行初始的 JavaScript 片段?