繁体   English   中英

在jQuery中提交页面之前先刮擦HTML

[英]Scrape HTML before submitting page in jQuery

我需要获取当前页面的HTML并通过表单提交。 我的页面的简化版本如下所示:

<body>
    <div id="container">
        <!-- stuff here -->
        <form id="pageform" action="mypage.php" method="post">
            <input type="hidden" id="Source" />
            <button type="submit" name="submit">Submit</button>
        </form>
    </div>
    <script type="text/javascript">
        function handlesubmit() {
            var pageSource = $("#container").html();
            $("#Source").val(pageSource);

            return true;
        }

        $(function() {
            $("#pageform").submit(handlesubmit);
        });
    </script>
</body>

此代码在Internet Explorer 9,Firefox和Chrome中可以正常工作。 但是,在Internet Explorer 7和Internet Explorer 8中, Source的结果值在服务器端被截断(source很大)。 我可以通过更改表单提交来解决此问题,该表单提交可以通过$.post()

为什么使用jQuery Ajax帖子而不是常规表单提交来工作? 在设置Source的值之前提交表单是否会导致竞争状况? 上面代码的哪些部分异步发生-仅$.post()请求?

更新:该请求是通过POST而不是GET执行的。

不,没有比赛条件。 查询字符串仅受长度限制。 如果要发送大量数据,则应该使用POST方法(它将数据放入请求正文中)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM