gpt4 book ai didi

javascript - 如何使用Jquery获取ViewBag的值

转载 作者:行者123 更新时间:2023-12-02 23:18:17 26 4
gpt4 key购买 nike

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

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

查看

@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>

Controller

    public ActionResult Prueba()
{
return View(new ClsPrueba());
}

[HttpPost]
public ActionResult Prueba(ClsPrueba prueba)
{
if (!ModelState.IsValid)
{
ViewBag.msg = "error";
return View(prueba);
}

return View(prueba);
}

最佳答案

有一个解决方法适合您。这是一个快速的取自 Possible to access MVC ViewBag object from Javascript file?

在 HTML 中

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

在 JS 中

var customVal = $("#customInput").data("value");

您可以去那里对答案进行投票。

关于javascript - 如何使用Jquery获取ViewBag的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57080334/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com