jquery - 如何使用 JQuery 更改模型的值?

标签 jquery asp.net-mvc

我正在使用 Asp.Net MVC 并且我有一个模型,其中有一个属性 status 并且在 form 中有 2 input type="submit " 提交表单,分别是:保存并发布保存。我想当我点击按钮保存并发布时将status属性更改为值1,当用户点击按钮保存时更改 status 设为值 0。

为此,我尝试使用 JQuery 获取 inputid 并更改 status 属性,但仍然无法做到它。

我怎样才能做到这一点?

html

<input type="submit" class="btn btn-success" value="Save Post" id="savePost"/>
<input type="submit" class="btn btn-success" value="Save" id="save" />

jquery

$(document).ready(function () {
    $('#addPropriedade').submit(function () {        
        var dados = new FormData($('#addPropriedade').get(0));

        $('#savePost').click(function () {
            dados.status = 1;
            console.log(dados.status);
        });
        $('#save').click(function () {
            dados.status = 0;
            console.log(dados.status);
        });


        $("#errorMessage").hide();

        var loading = $("#div_loading");
        $(document).ajaxStart(function () {
            loading.show();
        });
        $(document).ajaxStop(function () {
            loading.hide();
        });

        $.ajax({
            accepts: { json: 'application/json' },
            dataType: 'json',
            type: "POST",
            url: "/Propriedade/addAjax",
            data: dados,
            processData: false,
            contentType: false,
            success: function (data) {
                var status = data["status"];
                var msg = data["msg"];
                if (status === "1") {
                    $('#addPropriedade').trigger("reset");
                    $("#errorMessage").html(msg);
                    $("#errorMessage").prop("class", "alert-success");
                    //window.location.replace("/Empresa/view");                    
                } else {
                    $("#errorMessage").html(msg);
                    $("#errorMessage").prop("class", "alert-danger");
                }
                $("#errorMessage").show()
            },
            error: function (xhr, status) {
                $("#errorMessage").html("Erro tentando cadastrar");
                $("#errorMessage").prop("class", "alert-danger");
                $("#errorMessage").show()
            }
        });

        return false;
    });
});

最佳答案

嗨,我认为简单的解决方案是,如果您在模型强类型的同一个 cshtml 文件中使用 jquery。

然后您可以使用@字符直接访问模型对象。

示例:

var status = '@model.status'

然后你可以分配任何你想要的值。

所有其他类型的详细示例在以下链接中得到了很好的解释:

https://stackoverflow.com/a/41312348/3397630

希望对您有所帮助,请告诉我您的想法或反馈

谢谢

卡提克

关于jquery - 如何使用 JQuery 更改模型的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44208370/

相关文章:

javascript - 链接的 Accordion 主体

javascript - 需要知道页面的主DIV

javascript - bootstrap-datetimepicker.js 它在 MVC 5 中不起作用

asp.net-mvc - 使用 MVC 应用程序和 SendGrid 的 Azure SQL 存储过程

c# - 在 ASP.NET MVC 中更新多值 cookie?

c# - Mono 3.0/Debian/asp.net - 找不到方法 : 'System. Configuration.IConfigurationSectionHandler.Create

javascript - 通过 Ajax 将数据从 Laravel 7 View 传递到 Controller

javascript - 平滑状态交替反转不动画

javascript - JQPlot - 仅显示部分条形图

asp.net - IISExpress无法从Visual Studio 2015启动