我正在更新一个经典 ASP 页面 (login.asp),其中包括另一个经典 ASP 页面 (logincode.asp -- 包含第一页的功能)。
以前,点击登录按钮后,它会在 logincode.asp 上运行几个功能,然后在需要时打开一个条款协议对话框......
If Not Application("RequireTermsAcceptance") Then
Response.Redirect(redirectURL)
Else
response.Write("<script>$(function () {displayTerms();});</script>")
End If
...这可以通过在 login.asp 上调用 Javascript 函数来实现
<script>
function displayTerms() {
//open Dialog box here
}
</script>
对话框有两个按钮……一个根据协议将它们传递到下一页,另一个将它们返回到 login.asp。
但是,新设置不想再正常使用该功能。
这有几个可能的原因......
- 使用较新版本的 jquery ui ... jqueryui/1.8.8/jquery-ui.min.js - 在旧版本上 ... jquery-ui-1.8.16.custom.min.js 在新版本上。
- 在调用 displayTerms 函数之前,旧版本不会构建 jquery UI 对话框。新的在 $(document).ready(function () 中构建 jquery UI 对话框,但在调用 displayTerms 函数之前是隐藏的。
- displayTerms 函数的位置错误。目前在新版本中它位于 $(document).ready(function () 部分。但我不确定这是正确的位置。
我对javascript语法不够熟悉,不知道对displayTerms函数的调用需要如何改变,但它仍然需要在响应中。我相信写。目前,代码一直执行,但是当它到达应该调用 displayTerms 函数的 response.Write 时,它点击它,传递它,然后简单地重新加载 login.asp 页面。
任何关于这应该如何工作的建议将不胜感激。如果您需要更多详细信息,请告诉我,我很乐意提供。