2010-09-13 135 views
1

我写了一个javascript函数来转到特定的页面,如果它来自一个特定的页面。重定向到下一页

功能:

function proceed() 
{ 

    if(document.referer == "http://abcd.com/index.php?action=SignUp") 
    { 
    return document.location.href = "http://abcd.com/editprofile.php?action=editprofile"; 
    } 
} 

Submit按钮,在当前页面的表单(B):

我想是要经过一系列网页A-> B-> c,其中a是前一个,b是当前的,c是我的下一个。 b有一个表单,在向表单提交值时,它也应该调用javascript函数,然后转到页面c。

任何人都可以帮我找出错误在哪里吗?任何帮助将不胜感激。谢谢。

+0

请编辑您的问题,以便提交按钮的代码也是可见的,用4个空格缩进(埃里克展示了如何做到这一点)。 – 2010-09-13 07:25:53

回答

0

为了更加准确,您将不得不提供更多的应用程序代码。

解决方案似乎是以下内容。使用属性提交您的按钮:

<button type="button" onclick="proceed(); alert('You are not authorized to execute this action!');">Click Me!</button 
+0

这将是如果(document.re .....)location ='...';其他警报(...);并且不需要javascript:协议 – mplungjan 2010-09-13 07:06:53

+0

您错误地关闭了输入标记。 – Cipi 2010-09-13 07:31:31

+0

哎呀,复制+粘贴错误 - 将纠正它 – Thariama 2010-09-13 07:53:02

0

既然你有一个表格我想也有一些PHP/CGI脚本将处理表单的数据!?
在这种情况下,如果您通过JavaScript重载您的提交按钮以加载另一个页面(当然,其他情况下验证的确如此),您的表单将不会继续使用该脚本。

所以

  1. 你的提交按钮旁边都有onclick属性空间:onclick = "javascript...应该onclick="javascript...
  2. 您的函数proceed()应该返回true以提交执行。
  3. 即使在所有语法校正之后,仍然有些奇怪。毕竟,你只能给你的提交按钮提供一个“下一页”功能。那么表单应该叫什么:

    • 你的php或cgi脚本?然后你可以建立一个重定向到页面“C”到那个。
    • 你的页面“c”?那么你需要什么形式?
    • 两者,但独立?在这种情况下,我建议从proceed()显示一个JavaScript弹出页面“c”并返回true,以便表单继续其脚本。