【问题标题】:ajax call for string method not workingajax调用字符串方法不起作用
【发布时间】:2015-10-28 06:47:26
【问题描述】:

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

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

这是 C# 控制器方法

[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() { ... }里面

但同样的结果它不起作用。

【问题讨论】:

  • 尝试将 dataType 替换为 false 和我们,而不是在 vnext 中使用 IActionResult 替换字符串,在其他版本中使用 ActionResult 并返回内容
  • 您遇到了什么错误?你的网址应该是url: @Url.Action("TyneMice", "Brochure")',,你返回一个string,而不是json,所以要么使用return Json(...),要么使用dataType: "text",
  • @StephenMuecke 我已经按照你所说的进行了更改,但是在编译时或运行时没有发生错误,仍然没有调用调试点
  • @blin2linkme 你的意思是这样的dataType: false,public string IActionResult() {
  • tinymce.init({ 然后ed.on("init", function (ed) { 看起来不正确。尝试注释掉ed.on("init", function (ed) {这一行及其结束});

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


【解决方案1】:

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

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

【讨论】:

  • 在你的方法中我应该在哪里引用 html 文件或其内容?
  • 代码行将是return Json(System.IO.File.ReadAllText(@"C:\Users\..\myhtml.html"), JsonRequestBehavior.AllowGet);
猜你喜欢
  • 2023-03-25
  • 2023-01-17
  • 2017-09-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-31
  • 1970-01-01
相关资源
最近更新 更多