HTML:更新页面与用户输入后重定向到新页面

时间:2010-09-30 02:41:09

标签: html

我正在尝试编写一些HTML代码,以便在用户将输入提交到表单后在当前页面上创建表。也就是说,不是将值输入表单,单击提交,而是重定向到具有计算输出值的新页面,我希望输出值显示在当前页面的底部。这样,用户输入保持不变,唯一的变化是输出表被附加到当前页面的底部。这是一个如何理想地让页面工作的例子:

http://amort.appspot.com/

非常感谢任何帮助。谢谢!

5 个答案:

答案 0 :(得分:1)

您需要将表单操作指向同一页面。我们可以说你网页的网址是

http://example.com/page.php比您需要将行动指向同一页面。

<form action='http://example.com/page.php'>
并在您的表单中隐藏字段说
<input type='hidden' name='formSubmitted' value='1' >
当此表单提交给自己时,您可以通过get参数检查隐藏字段是否有值。

获得该值后,您可以进行条件检查以显示表格。但是,你需要使用像jsp或php这样的服务器端语言。

另一种方法是不提交表格。但是,当您单击“提交查询”按钮时,会调用javascript。这个javascript将从填写的表格框中读取值,并将它们显示在下表中。

答案 1 :(得分:1)

您可以在HTML文件中使用PHP。

实施例 简单地创建你这样的形式。

<form action="welcome.php" method="get">
Name: <input type="text" name="fname" />
Age: <input type="text" name="age" />
<input type="submit" />
</form>

当用户点击“提交”按钮时,发送到服务器的URL可能如下所示: http://www.w3schools.com/welcome.php?fname=Peter&age=37

“welcome.php”文件现在可以使用$ _GET函数来收集表单数据(表单字段的名称将自动成为$ _GET数组中的键): 然后创建一个表并添加行是正确的位置。所以这就是你的表格,例如你在HTML文件中写的就像那样简单。

Welcome <?php echo $_GET["fname"];?>.<br />
You are <?php echo $_GET["age"]; ?> years old!

希望有所帮助。 如果有,请告诉我。感谢

<强> PK

答案 2 :(得分:0)

您需要使用javascript来执行此操作。如果您提供了页面的当前代码以及您希望完成的具体目标,那么我可以给出一个示例脚本,但是如果您觉得自己编码很舒服,那么只需查看javascript教程。

答案 3 :(得分:0)

您没有说明您使用什么来处理表单,但您将无法使用HTML处理它。因此,您需要使用其他语言进行某种处理。

正如其他人所提到的,你可以用JavaScript做到这一点。 AJAX将是一种方式,但是如果你真的想要,你可以编写自己的代码来执行此操作(但如果你不需要,我不会推荐它。)

另一种方法是使用PHP。在提交表单时让页面自行处理。

与PHP建议类似,您可以通过CGI脚本/程序执行此操作。表单中指定的操作是调用页面本身。这是一个简单的Python示例,假设您的脚本名称为so_self_call.py:

#!/usr/bin/env python

import cgi
import sys

def end_page():
    print "</body>"
    print "</html>"

def print_form():
    print "<form action=\"so_self_call.py\">"
    print "<input type=\"text\" name=\"theText\">"
    print "<input type=\"submit\">"
    print "</form>"
    return

def start_page():
    print "Content-Type: text/html"
    print
    print "<html>"
    print "<head>"
    print "<title>Example of Python CGI script which calls itself</title>"
    print "</head>"
    print "<body>"
    return

def main():
    start_page()
    print_form()
    the_form = cgi.FieldStorage()
    if "theText" in the_form:
        print "From last time, theText = %s" % (the_form["theText"].value)
    end_page()
    return

if __name__ == "__main__":
    sys.exit(main())

答案 4 :(得分:0)

您可以使用jQuery轻松完成此操作。使用.ajax()将表单提交到计算器页面,并让计算器将结果输出为JSON。然后,您可以在底层表中输出该结果,而无需用户离开/重新加载页面。

希望这有帮助。