在同一页面中显示表单结果,只能使用客户端脚本?

时间:2013-11-23 05:12:47

标签: javascript html forms

我有一个棘手的工作问题,我希望得到一些帮助。

要处理各种表格和存储条目,我们使用内部工具,我无法修改。基本上会发生什么:

  1. 我输入了原始页面的URL,以及成功提交后的目标页面的URL。
  2. 该工具会发出一些HTML和Javascript代码,其中最重要的是一个唯一的URL,让我们称之为(redactedURL),它位于action属性之后。
  3. 当提交表单时,页面将刷新为两个可能的目标URL之一:如果成功则输入一个,或者(如果错误,则为redactedURL)。
  4. 我可以随后从该工具下载所有条目。
  5. HTML非常简单。 checkform()是一个简单的验证脚本。

        <form action="(redactedURL)" name="enenForm" method="POST" onSubmit="return checkForm()">
    

    这个问题是我无法设置(redactedURL)错误页面的样式,这非常难看。我想知道无论如何我都可以

    1. 暂停表单提交的自动显示结果
    2. 确定目标网址,并根据该网址写出自定义的感谢/错误消息(因为我无法访问服务器端脚本,这似乎是确定提交是否成功的唯一解决方案)
    3. 确保该工具仍然正确存储所有条目。
    4. 非常感谢任何帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

不要使用表格。而是使用AJAX。我认为这个SO Question将提供一个开始。基本上,您使用JavaScript使用XMLHttpRequest将数据提交到服务器。返回的HTML是一个字符串,您可以修改或(更好)规范化并添加到DOM。

对于高级示例,jQuery-Mobile在您单击链接时执行此概念,而不是从服务器获取HTML,因为AJAX请求会在<body>内复制HTML并将其插入DOM。

搜索有关AJAX和jQuery(或您喜欢的JS库)的教程。与this one一样。