Javascript 根据控制器变量值切换div 编辑
我有一个“保存更改”按钮,我想点击并切换一个带有消息“已保存更改”的div。我是这样做的: HTML:Javascript 根据控制器变量值切换div 编辑,javascript,jquery,html,asp.net-mvc,Javascript,Jquery,Html,Asp.net Mvc,我有一个“保存更改”按钮,我想点击并切换一个带有消息“已保存更改”的div。我是这样做的: HTML: <input type="submit" id="savebtn" name="save" value="Save Changes"/> <input type="hidden" id="res" name="res" value=&qu
<input type="submit" id="savebtn" name="save" value="Save Changes"/>
<input type="hidden" id="res" name="res" value="@ViewBag.result"/>
<div class="success">Changes saved</div>
ViewBag.result = result;
但是,我需要按钮来实际保存更改,如果操作成功,则显示消息div。因此,在我的cshtml
文件中,我有一个包含操作成功或失败的结果变量
CSHTML:
<input type="submit" id="savebtn" name="save" value="Save Changes"/>
<input type="hidden" id="res" name="res" value="@ViewBag.result"/>
<div class="success">Changes saved</div>
ViewBag.result = result;
现在,我需要根据结果变量显示消息div:我需要以某种方式将其作为JQuery
函数的参数。我正在一个视图包中传递它
注意:页面加载时,viewbag为空。它仅在单击按钮后获取其值。在那之后,viewbag被填充,我想在jQuery函数中使用它,但我没有得到任何运气。通过,结果是viewbag
在jquery中访问viewbag值,并相应地显示/隐藏您的div假设您可以将结果存储在输入隐藏字段中,使用下面的查询访问结果,并且最初成功的div是隐藏的:
<input type="hidden" id="result" value"success"/>
您可以在一个简单的if条件下检查它
if($('#result').val()=="success")
$(".success").toggle();
或者可以使用Ajax方法
function Save() {
$.ajax({
url: "Your Url", // Current Page, Method
data: Your data // better if you parameter map as JSON
type: "POST",
contentType: "application/json", // posting JSON content
dataType: "JSON", // type of data is JSON (must be upper case!)
timeout: 100000, // AJAX timeout
success: function (result) {
$(".success").toggle();
},
error: function (xhr, status) {
alert("An error occurred while processing");
}
});
}
现在在您的按钮中调用save(),单击是否可以将此变量保存到html代码中的隐藏输入?您的意思是,例如,将其在ViewBag中传递到隐藏的div中?我不能执行类似于$('#savebtn')的操作吗?单击(函数(){if($(@ViewBag.result==“OK”){alert('test');})
实际上,您需要使用ViewData查看这一点它不起作用,我正在获取条件编译作为警告被关闭