Javascript 如何使用Jquery获取ViewBag的值

Javascript 如何使用Jquery获取ViewBag的值,javascript,jquery,asp.net-mvc,visual-studio,Javascript,Jquery,Asp.net Mvc,Visual Studio,当用户没有完成表单时,我会传递一个带有“error”值的ViewBag,使用jquery我会将ViewBag放在一个警报中,以便用户可以看到消息。但我没有得到任何结果 另外,我知道.net中的GET和POST是两个不同的页面,GET显示视图,POST返回以显示视图,但带有经过验证的数据。在我看来,我看到实际上只显示了一个页面,因为我已经放置了一个警报(),以确定它是否为真,并且当页面加载时会显示消息,但当我按下提交按钮时,消息不会再次显示 查看 @model wsCharlas.Models.C

当用户没有完成表单时,我会传递一个带有“error”值的ViewBag,使用jquery我会将ViewBag放在一个警报中,以便用户可以看到消息。但我没有得到任何结果

另外,我知道.net中的GET和POST是两个不同的页面,GET显示视图,POST返回以显示视图,但带有经过验证的数据。在我看来,我看到实际上只显示了一个页面,因为我已经放置了一个警报(),以确定它是否为真,并且当页面加载时会显示消息,但当我按下提交按钮时,消息不会再次显示

查看

@model wsCharlas.Models.ClsPrueba

@{
    ViewBag.Title = "Prueba";
    Layout = "~/Views/Shared/_Layout.cshtml";
}

<h2>Prueba</h2>


@using (Html.BeginForm()) 
{
    @Html.AntiForgeryToken()

    <div class="form-horizontal">
        <h4>ClsPrueba</h4>
        <hr />
        @Html.ValidationSummary(true, "", new { @class = "text-danger" })
        <div class="form-group">
            @Html.LabelFor(model => model.id_prueba, htmlAttributes: new { @class = "control-label col-md-2" })
            <div class="col-md-10">
                @Html.EditorFor(model => model.id_prueba, new { htmlAttributes = new { @class = "form-control" } })
                @Html.ValidationMessageFor(model => model.id_prueba, "", new { @class = "text-danger" })
            </div>
        </div>

        <div class="form-group">
            @Html.LabelFor(model => model.nombre_prueba, htmlAttributes: new { @class = "control-label col-md-2" })
            <div class="col-md-10">
                @Html.EditorFor(model => model.nombre_prueba, new { htmlAttributes = new { @class = "form-control" } })
                @Html.ValidationMessageFor(model => model.nombre_prueba, "", new { @class = "text-danger" })
            </div>
        </div>

        <div class="form-group">
            <div class="col-md-offset-2 col-md-10">
                <input type="submit" value="Create" class="btn btn-default" />
            </div>
        </div>
    </div>
}

<div>
    @Html.ActionLink("Back to List", "Index")
</div>

@section Scripts {
    @Scripts.Render("~/bundles/jqueryval")
}

<script type="text/javascript">

    $(document).ready(function () {

       alert("Hello World");        

       if ('@ViewBag.msg' != "") {
            alert('@ViewBag.msg');
       }
    });


</script>

你有工作要做。这是一个很快从

在HTML中

<input type="hidden" id="customInput" data-value = "@ViewBag.CustomValue" />

你可以在那里投票决定答案。

jajajaja。。。saludos bro…使用数据属性来做这件事有点过分了。。。只需使用
value=“@ViewBag.msg”
然后在脚本调用
$(“customInput”).val()
。差别不大,但要简单:)
<input type="hidden" id="customInput" data-value = "@ViewBag.CustomValue" />
var customVal = $("#customInput").data("value");