javascript - ajax 调用字符串方法不起作用

标签 javascript c# jquery ajax asp.net-mvc

我想在 ASP.NET MVC 中将 html 内容设置为 TinyMCE 编辑器内容

所以我提出了一个解决方案,在服务器端将该 HTML 文件转换为字符串,然后在客户端使用 ajax 调用它

这是 C# Controller 方法

[HttpGet]
public string TyneMice()
{
    return System.IO.File.ReadAllText(@"C:\Users\..\myhtml.html");
}

这是 ajax 调用,

<script type="text/javascript">    

          tinymce.init({

            ...,

            setup: function (ed) {
                ed.on("init", function (ed) {

                    $.ajax({
                        type: "GET",
                        url: "Brochure/TyneMice",
                        contentType: "application/json; charset=utf-8",
                        dataType: "json",
                        success: function (data) {

                            tinyMCE.activeEditor.setContent(data);
                        },

                        error: function () { alert("Ajax Error"); }
                    });

                })
            }

        });

 </script>

但是一旦我将调试点放在上面的字符串方法上,它就不会调用

然后我将上面的脚本放入 $( document ).ready(function() { ... }

但是同样的结果却不起作用。

最佳答案

您的操作应返回 ActionResult 类型。该操作将返回 Json 对象,并将 JsonRequestBehavior 设置为AllowGet。

[HttpGet]
public JsonResult TyneMice()
{           
    return Json("TyneMice Example", JsonRequestBehavior.AllowGet);
}

关于javascript - ajax 调用字符串方法不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33384603/

相关文章:

c# - 找不到 System.Windows.Media 命名空间?

c# - 使用 StringReader 追加文本(在 reader.ReadLine() 之后)

javascript - 如何在 JQuery 中获取所有元素并将它们作为数组发送

javascript - 如何转换 "["15 3","15 6","16 6","19 7"]"到 ["153","156","166"0x1045679 10]

javascript - 在 html/mvc 中实现对表列的拖放

Javascript - 将一些 HTML 放入文档中

javascript - Angular 2 相册创建

c# - 复选框更新语句

javascript - 如何在不重新加载页面的情况下对数据进行分页?

javascript - 对象 HTMLTextAreaElement javascript 响应