我如何通过ajax提交表格?

时间:2017-01-26 15:13:38

标签: javascript ajax asp.net-mvc

我尝试通过ajax提交表单而不回发..我的代码不起作用

我的剧本中有什么问题?

我是ajax的新手。用ajax脚本帮助我..

下面是我的代码

注意:我在单个视图中有两个提交按钮。我想为两个提交动作进行ajax调用

我的观点

function<observable<json>(observable<string>)> SimpleOperators::convertFromStringToJson() {
  return [](observable<string> $str) {
    return $str |
      Rx::map([](const string s) {
        return json::parse(s);
      });
  };
}

我的控制器

    @model AjaxEF.Models.Customer

@using (Html.BeginForm("Index", "Main", FormMethod.Post,new { id="idForm"}))
{
    @Html.EditorForModel()
    <br />
    <input type="submit" name="save" value="Save" />
    <input type="submit" name="cancel" value="Cancel" />
}
<script>
    $("#idForm").submit(function (e) {
        e.preventDefault(); // avoid to execute the actual submit of the form.
        var url = "~/Main/Result"; // the script where you handle the form input.

        $.ajax({
            type: "POST",
            url: url,
            data: $("#idForm").serialize(), // serializes the form's elements.
            success: function (data) {
                alert(data); // show response from the php script.
            }
        });


    });

</script>

1 个答案:

答案 0 :(得分:0)

不确定为什么其他答案被删除了,但它是100%正确的。您使用AJAX访问的URL是self.assertEqual(client_created.user.first_name, data_client_profile["user"]["first_name"]) AssertionError: 'Wally' != 'Apoc' 操作,除了返回视图之外什么也不做。您需要发布到refresh_from_db()操作,并且由于表单已设置为发布,因此获取AJAX网址的最佳方法是从表单中选择它:

Result