javascript - 在下拉列表中选择值时使用 ajax 发布 MVC 值

标签 javascript ajax asp.net-mvc model-view-controller asp.net-mvc-ajax

我在一个表单中有几个下拉列表。每次用户在这些下拉列表之一中选择一个值时,我是否希望将该值保存到后端(数据库)。我不想重新加载页面,所以我想实现此目的的最佳方法是使用 ajax,而这正是我需要帮助的。

当我在下拉列表中选择一个值时,我将如何让它自动将值发布到服务器端。我应该为每个下拉列表制作 1 个表格,以便我可以单独更新它们吗?我如何让它以 ajax 调用的形式发布值,而不是重新加载页面?我在 ASP MVC 上使用 JQuery 和 JQuery Mobile。

为了演示目的,让我展示一些代码,就像现在这样: View 模型:

public class ColorViewModel
{
    public ColorViewModel()
    {
        Options = new List<string>(){ "red", "blue", "green" };
    }

    public string Value { get; set; }

    public List<string> Options { get; set; }
}

查看:

@model IEnumerable<ColorViewModel>

@using (Html.BeginForm())
{
    foreach(var item in Model)
    {
        Html.DropDownListFor(m => m.Value, Model.Options)
    }
    <input type="submit" value="Save">
}

我想从表单中删除提交按钮,并在用户选择一个值时完成所有表单提交(我想这可以通过使用 javascript 实现)

最佳答案

默认情况下,MVC 应该为该字段呈现 id="Value"(您可以在辅助方法的 HTML 参数中覆盖它)。

然后使用 jquery(如果您正在使用 MVC 项目模板,您应该已经在项目中拥有它)您可以发布您的表单:

$(function() {
    $('#Value').change(function() {
        this.form.submit();
    });
});

关于javascript - 在下拉列表中选择值时使用 ajax 发布 MVC 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17148482/

相关文章:

javascript - 如何提取嵌套对象数组中 'enabled' 对象的路径

php - 多个输入字段上的 Jquery 日期选择器

php - 没有定期刷新的 AJAX 聊天?

python - web2py 中的 ajax 响应

c# - ViewModel 上的 MVC2 DataAnnotations - 不理解将它与 MVVM 模式一起使用

c# - MVC5申请表导致提交时有多个post请求

javascript - rest api express 更新字段

javascript - 是否可以一步创建一个数组并推送内容

javascript - jQuery 未在 ajax 请求的脚本标记中加载 js 文件

asp.net-mvc - 更新 WSDL 引用但 web 配置未在 ASP.net MVC 4 项目中更新