【问题标题】:Why i can not call the controller from ajax in asp.net mvc?为什么我不能从 asp.net mvc 中的 ajax 调用控制器?
【发布时间】:2016-08-22 09:51:46
【问题描述】:

我是asp.net mvc 的初学者,我想从 Ajax 代码中调用控制器操作,为此请阅读本教程:
CALL CONTROLLER WITH AJAX
在我的控制器中编写此操作方法:

[HttpPost]
        public void Test01()
        {
            string behzad = "BEHZAD RAZZAQI";

        }


并在视图页面中编写此 html 代码:

<button type="button" id="btn1" class="btn btn-success">ثبـت نـام</button>


在该视图页面上写下这个jquery 代码:

<script>
        $("#btn1").click(function () {
            $.ajax({
                url: "/MainPage/Test01",
            datatype: "text",
            type: "POST",
            success: function (data) {
                alert('ok');//$('#testarea').html("All OK");
            },
            error: function () {
                $("#testarea").html("ERROR");
            }
            });
        });
    </script>


但是当我按下按钮时,我看不到任何警报,发生了什么?我该如何解决这个问题?

【问题讨论】:

  • 1. ajax url 中给出的“MainPage”是您的控制器名称吗? 2.当你点击按钮时,那个javascript方法会命中吗?尝试在 ajax 调用之前发出警报。 3、浏览器控制台有没有报错?
  • 您在浏览器Console 中看到的任何错误?
  • @Developer 我在浏览器控制台中收到此消息:警告:NetUtil.asyncFetch() 要求通道在 loadinfo 中设置安全标志之一(请参阅 nsILoadInfo)。请使用 NetUtil.newChannel() 创建频道

标签: jquery ajax asp.net-mvc


【解决方案1】:

试试这个:

 $(document).ready(function() {

    $("#btn1").click(function () {
        $.ajax({
            url:'<%= Url.Action("Test01", "MainPage") %>',
            success: function(data) {
                 alert("ok");
            }
        });
    });

 });

确保 MainPage 是您的控制器的名称,并且您包含了您的 jquery 库,就像 @bhupesh 所述:

<script src="~/scripts/jquery-*.*.*.min.js"></script>

更多信息可以找到Here

【讨论】:

  • 我希望在按钮触发时运行 ajax,如何更改该代码?
  • 只需将该代码放入您的按钮点击功能中。
  • 我将简单的测试功能写入脚本标签,并将 onclick="test()" 写入按钮单击,在测试功能中写入警报('ok'),当按钮触发时显示,但是当将您的 ajax 文件复制到测试函数并触发按钮,警告不显示
  • 感谢我的朋友,将简单的警报写入 $("#btn1").click(function () { function,out of ajax, and don't show that!
  • mmm...这可能是由于您的文档没有准备好,或者可能是由于您没有正确包含您的 jquery 库...请查看您的页面源代码并确保您是正确引用 jquery 库.. 无论如何,我在您的文档准备好后更新了执行代码的答案..
【解决方案2】:

请确保您的页面中包含 jquery 脚本文件。

<script src="~/scripts/jquery-*.*.*.min.js"></script>

【讨论】:

    猜你喜欢
    • 2023-03-28
    • 2014-04-28
    • 2014-06-17
    • 1970-01-01
    • 2014-06-23
    • 2018-06-21
    • 1970-01-01
    • 2020-05-15
    • 1970-01-01
    相关资源
    最近更新 更多