gpt4 book ai didi

jquery - $(document).ready() 在加载部分 View 之前触发

转载 作者:行者123 更新时间:2023-12-03 22:40:49 27 4
gpt4 key购买 nike

我有一个页面,其中包含部分 View 。

MyMainView.cshtml

<div>
@Html.Partial("MyPartial")
</div>
@section pagespecific {
<script type='text/javascript'>
$(document).ready(function(){
console.log('Value is: ' + $('#MyModelField').val());
});
</script>
}

MyPartial.cshtml

<div>
@Html.HiddenFor(x => x.MyModelField)
</div>

模型中 MyModelField 的值为 True,但是,我在浏览器控制台中得到以下输出:

Value is: undefined

为什么这没有引起关注?在触发之前,不应该将部分 View 添加到 DOM 中吗?

如果我将 $(document).ready() 更改为 $(window).load() ,它会按预期工作。

如何实现所需的行为?

最佳答案

是的,这是真的,原因是每当你的 dom 准备好时 .ready 就会被触发。因此,您的页面首先加载,并触发 jquery .ready function() ,而顺序执行的部分 View 也在服务器端执行。

两者的可用性不同。

停止或者你想在一段时间后执行。

  • 您也可以在部分 View 中执行此操作

  • 给出您的持续时间的延迟时间

    $(document).ready(function(){
    console.log('Value is: ' + $('#MyModelField').val());
    setTimeout("$('#buttonid').click()", DelayDuration);
    });

    //DelayDuration表示给出毫秒值,1000毫秒=1秒

这里问了同样的问题

JQuery events don't work with ASP.NET MVC Partial Views

Is it possible to kick off a javascript function after a partial view renders in MVC Asp.net?

关于jquery - $(document).ready() 在加载部分 View 之前触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27615022/

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