![](/img/trans.png)
[英]JQuery load page on browser and execute Jquery - No Selenium
[英]How to execute jquery script before page load?
我需要在ASP.NET应用程序中的页面加载之前执行javascript。
我的函数返回用户位置,我想将值传递给服务器端并根据位置加载数据。
问题是页面加载后会执行javascript函数。
这是我的代码:
$(function () {
getLocation();
});
在getLocation函数中,我设置了隐藏字段值
$("#<%= HfLocation.ClientID %>").val(location);
在后面的代码中,我尝试获取价值,但始终为空
protected void Page_Load(object sender, EventArgs e)
{
var location = HfLocation.Value;
}
我需要在ASP.NET应用程序中的页面加载之前执行javascript
此要求没有任何意义。 记住ASP.NET是如何工作的:
您会看到不可能在步骤3(执行Page_Load事件的步骤)之前执行步骤5。
使用JavaScript执行ajax回调以请求数据。
我需要在ASP.NET应用程序中的页面加载之前执行javascript。
在这种情况下,您将需要发出两个页面请求。 您无法使用单个页面请求来完成此操作,因为Page_Load()在HTML + JS甚至发送给客户端之前就已运行。
取而代之的是,创建一个微型页面进行JS调用,然后回发到当前页面,或者(可能更好)加载一个新页面。 您可以通过常规(非服务器)格式传递位置数据,也可以通过在客户端上的JS中设置cookie来传递位置数据,或将其编码为查询字符串。
当第二个页面/请求触发Page_Load()事件时,它将获得您需要的数据。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.