我几次没有回复就问了同样的基本问题,但让我再试一次,尽可能简单地分解。
这应该是一件简单的事情,但我无法使其发挥作用。我在视图中设置了一个断点,我可以看到隐藏字段被设置为正确的值。但是javascript不会显示该值。
正在渲染的页面/视图已经过去了。当我想要显示此警报时,我将返回该页面,现在我想看到警报。
就好像页面正在被缓存一样,因此它不使用隐藏字段的新值,而是使用旧值(从第一次访问页面开始)。如果正在缓存DOM,我如何阻止它,以便每次访问页面时,我都会获得页面的更新值而不是缓存的值?我做错了什么?
@<input type="hidden" id="hdnShowMsg" value="@Model.ShowMsg" />
<script>
alert($('#hdnShowMsg').val());
</script>
答案 0 :(得分:3)
您的脚本可能会在文档完全呈现之前触发。使用jQuery document ready
函数。
<script>
$(function() {
alert($('#hdnShowMsg').val());
});
</script>
另请注意,jQuery Mobile文档中不支持document ready
,您可能会遇到问题,具体取决于您尝试操作的DOM的哪个部分。
改为使用$(document).bind("pageinit", function() {})
。