如何在加载页面之前使用javascript追加请求的标题
我有两个html文件属于两个不同的控制器 这属于SignupController的索引操作 Index.html如何在加载页面之前使用javascript追加请求的标题,javascript,.net,ajax,model-view-controller,get,Javascript,.net,Ajax,Model View Controller,Get,我有两个html文件属于两个不同的控制器 这属于SignupController的索引操作 Index.html <div class="signup-small-font pull-right"><a href="/Account/ResetPassword">Forgot password?</a></div> 在请求resetPassword.html之前,我应该在index.html锚链接中执行什么操作来调用此函数 就像我想要的一样,当我
<div class="signup-small-font pull-right"><a href="/Account/ResetPassword">Forgot password?</a></div>
在请求resetPassword.html之前,我应该在index.html锚链接中执行什么操作来调用此函数
就像我想要的一样,当我点击它时,它将导航到Account/Resetpassword,并使用从javascript文件获得的响应来呈现,而不是html文件中的正常响应
<div class="signup-small-font pull-right"><a onclick="appendHeader(urlCulture)" href="#">Forgot password?</a></div>
试试看。我不太确定这是否是您想要做的。在您的html文件中
<div class="signup-small-font pull-right"><a onclick="appendHeader(urlCulture)" href="#">Forgot password?</a></div>
试试看。我不太确定这是否是您想要做的。您正在使用路由,您需要从javascript函数获取url 这里有一个例子: 你可以做一些类似的事情:
<div class="signup-small-font pull-right"><a onclick="return appendCustomHeader(this);" href="/Account/ResetPassword">Forgot password?</a></div>
我没有测试过,我希望它对你有用
似乎您可以禁用href重定向返回false
见此:
如果您正在使用路由,则需要从javascript函数获取url 这里有一个例子: 你可以做一些类似的事情:
<div class="signup-small-font pull-right"><a onclick="return appendCustomHeader(this);" href="/Account/ResetPassword">Forgot password?</a></div>
我没有测试过,我希望它对你有用
似乎您可以禁用href重定向返回false
见此:
它说的是“window.location不是一个函数”,应该是window.location=“Account/ResetPassword”;我已经更改到了正确的位置,但现在的问题是AccountController被调用了两次,一次是使用自定义标题,然后它调用了一次而没有使用它。您是否将href的值更改为“#”?是的,我已经这样做了,但是通过成功地将window.location设置为Account/ResetPassword,使其触发帐户控制器中的操作againit说“window.location不是函数”,它应该是window.location=“account/ResetPassword”;我已经更改到了正确的位置,但现在的问题是AccountController被调用了两次,一次是使用自定义标题,然后它调用了一次而没有使用它。您是否将href的值更改为“#”?是的,我已经这样做了,但是通过成功地将window.location设置为Account/ResetPassword,使其再次触发帐户控制器中的操作。这种方法还以某种方式发送两次请求,一次发送带有标头的请求,一次发送不带标头的请求。当“href”起作用时,即发送不带标头的请求。尝试使用不同的属性名,而不是“href”,我已经编辑了答案。请看。如果我改为route,它将不再导航到该页面。就像我想要的一样,当我点击它时,它将导航到Account/Resetpassword,并使用从javascript文件获得的响应来呈现,而不是我编辑的普通响应。return false要禁用href重定向,请尝试。如果设置return false,即使我仍然得到正确的响应,也无法导航到该页面。这不是我想要的。因此,我的想法是我需要导航到该页面,但它将使用从javascript文件获得的响应呈现该页面。hi,这种方法还以某种方式发送请求两次,一次带标题,一次不带标题。当“href”起作用时,即不带标题的请求。尝试使用不同的属性名,而不是“href”,我已经编辑了答案。请看。如果我改为route,它将不再导航到该页面。就像我想要的一样,当我点击它时,它将导航到Account/Resetpassword,并使用从javascript文件获得的响应来呈现,而不是我编辑的普通响应。return false要禁用href重定向,请尝试。如果设置return false,即使我仍然得到正确的响应,也无法导航到该页面。这不是我想要的。因此,我需要导航到该页面,但它将使用从javascript文件获得的响应呈现该页面
function appendCustomHeader(element){
var url = element.href; // to get full url
$.ajax({
type: 'GET',
url: url,
headers: {
"CustomHeader": 'YourCustomHeader'
},
success: function(res) {
// here you make anything else with your response
}
})
return false;
}