在不同的页面上收集输出和表单提交?

Posted

技术标签:

【中文标题】在不同的页面上收集输出和表单提交?【英文标题】:collecting output and form submission on a different page? 【发布时间】:2011-07-12 19:15:05 【问题描述】:

我正在寻找一种在提交表单后在网页上收集输出(以文本形式)的方法。

有没有办法在 Javscript 中查看表单提交的 http 响应?

否则,我想知道是否有一种很好的方法可以解析或收集多个网页(同一页面)表单提交的输出。我知道使用 javascript 在 Firefox 中保存带有输出的文件是不可能的(或太复杂)。

因此,我的一个选择是设置另一个网页,该网页将接受表单提交,并在其他页面上提交表单后以某种方式输出 http 响应或网页。

我试图在 Greasemonkey 中完成所有这些工作,但我无法找到一种方法来收集多个表单提交(同一页面的)的输出以在完成后进行分析。到目前为止,我所做的是填写正确的表单并提交(尽管它似乎永远在循环中,因为每次提交表单时,您都会回到同一页面,并且 Greasemonkey 脚本会一遍又一遍地执行表单提交),但我不知道如何以某种方式收集结果。

我以前没有使用过像 iMacros 这样的宏,所以这可能是更合适的方法?

谢谢!接受任何建议并希望听到任何帮助!非常感谢! :) 再次感谢!

【问题讨论】:

我认为 AJAX 请求可以完成这项工作。它可以使用 GET 和 POST 发送 HTTP 请求,完成后您可以访问响应。 感谢您的建议!我不熟悉AJAX,之前没有任何经验,你愿意在一个简单的例子中提供一个简单的GET请求和响应吗?我会在 Greasemonkey 中编写这样的代码吗? 【参考方案1】:

我没有任何使用 Greasemonkey 的经验,但是使用 jQuery 时 AJAX 调用相对容易(但我不知道 jQuery 是否适用于 Greasemonkey)。

http://jsfiddle.net/9peGW/

$.ajax( url: "/",
         type: "GET",
         data: $('#theform').serialize(), // returns like '?test=val&test2=val2'
                                          // using the elements of the form
         success: function(text, state, xhr) 
           alert(text.substring(0, 200));
             // alert first 200 response characters
             // (so that it fits in the alert box)
           alert(xhr.getResponseHeader("Content-Type"));
             // alert the Content-Type response header
         
      );

请注意,虽然 AJAX 请求仅适用于调用它的域,但也许这不适用于 Greymonkey(我真的没有这方面的经验)。

【讨论】:

【参考方案2】:

在 İmacros 太容易了。您可以搜索标签并提取您需要的信息。不要尝试 jQuery。这个工作太复杂了,我知道:)

【讨论】:

以上是关于在不同的页面上收集输出和表单提交?的主要内容,如果未能解决你的问题,请参考以下文章

从表单提交中收集库存

dreamweaver中如何把表单数据提交显示在当前页面上?

如何在本页提交表单把提交的值显示在本页面上? 请高手把详细的讲解过程给我说一下。谢谢!

from表单跳转到java类的方法里面

如何在 Django 中访问表单提交按钮的值?

ajax+FormData+javascript实现无刷新表单信息提交