javascript - MVC Controller 返回 JSON

标签 javascript jquery ajax asp.net-mvc

我有这个 HTML 和脚本:

<form>
    Text :<br>
    <input type="text" name="nameid" id="nameid" value="">
    <br><br>
    <input type="submit" value="Send">
</form> 

$(document).ready(function () {

    $("form").submit(function (event) {
        $.ajax({
            type: 'GET',
            url: "/MyController/MyAction2",
           data: { nameid: $('#nameid').val() },
            success: function (newdata) {
                var cy = cytoscape({
                    container: document.getElementById("cy"),
                    elements: JSON.parse(newdata)

                });
                });
            }
        });

    });

});

当从 AJAX 调用 MyAction2 时,URL 会转到 MyAction2 并且我会看到原始 JSON 数据。如何使 MyAction2 返回值到 AJAX,并且我将其用作 newdata 变量?谢谢。

最佳答案

您用于获取 JSON 数据的代码是正确的,您只需停止表单提交,可以通过在事件上调用 preventDefault() 来完成。

另请注意,问题中的 }); 不匹配,但我认为这只是问题本身的拼写错误。另请注意,如果您设置了正确的 dataType,则无需手动 JSON.parse 响应。试试这个:

$(document).ready(function () {
  $("form").submit(function (event) {
    event.preventDefault(); // < add this...

    $.ajax({
      type: 'GET',
      url: "/MyController/MyAction2",
      data: { nameid: $('#nameid').val() },
      dataType: 'json', 
      success: function (newdata) {
        var cy = cytoscape({
          container: document.getElementById("cy"),
          elements: newdata
        });
      }
    });
  });
});

关于javascript - MVC Controller 返回 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43732156/

相关文章:

javascript - 单击提交按钮后显示隐藏的表格

javascript - 使用 -- 而不是 value = value - 1 无法正确更新 .html

jquery - 有JavaScript的代码契约库吗?

Javascript 为每个 if 而不是多个 if

javascript - React Gulpfile watchify 不更新

Javascript RegExp 根据内容更改行

javascript - 在脚本中使用 HTML 表标签

javascript - jquery重复节点匹配和删除

ajax - ajax调用后处理onclick函数<f :ajax>

ajax - Rxjs 5-简单的Ajax请求