使用jquery拦截表单提交到弹出窗口

发布于 2024-11-06 19:07:18 字数 652 浏览 0 评论 0原文

我正在使用弹出窗口使用其 api 将图像上传到 imageshack 提供商。

我的目标是,在主窗口中,从弹出窗口内的表单上传中获取返回的xml(以便获取上传图像的缩略图和图像链接)并将这些数据插入到主窗口中的一些隐藏字段中窗户。

编辑 我的 iter 是:

  1. 用户单击我的网站 (example.com) 上的按钮
  2. 我通过 window.open 打开一个弹出窗口,其中包含一个表单 (example.com/form.html)
  3. 表单的操作转到 Imageshack api url
  4. 用户上传图像,提交表单,imageshack api 返回一些 xml。

我需要在主窗口中获取该 xml,解析它以获取原始图像和缩略图 url,然后关闭弹出窗口。

这是因为我不喜欢我的用户必须将 imageshack 中的 html 复制并粘贴到我网站上的字段中......这只是为了方便。

那么,如何检测表单何时提交,以及如何获取返回的 xml?

PS:我使用imageshack来降低图像的tmy服务器带宽和CPU使用率,所以我无法将图像上传到我的服务器上,然后存储在imageshack上(通过服务器端语言)

I'm using a pop-up window to upload images to imageshack provider using their api.

My goal is, in the main window, to get the returned xml from the form upload inside the pop-up window (in order to get the thumb and image links of the uploaded image) and insert this data into some hidden fields in the main window.

edit
My iter is:

  1. The user click a button on my site (example.com)
  2. I open a pop-up with a form inside (example.com/form.html) via window.open
  3. The form's action goes to Imageshack api url
  4. The user upload the image, the form is submitted, imageshack api return some xml.

I need to get that xml in the main window, parse it to get the original image and thumbnail url, then close the pop-up.

This becose i dont like my user to have to copy'n'paste the html from imageshack into a field on my site... its just for convenience.

So, how can I detect when the form gets submitted, and how do I get the returned xml?

p.s: im using imageshack to low tmy servers bandwith and cpu usage for images, so i cant upload the image on my server and then store on imageshack (via server-side languages)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

一曲琵琶半遮面シ 2024-11-13 19:07:18

当您使用 Jquery 发出 ajax 请求时,您应该在回调函数中启动弹出窗口。当响应返回时,将 xml 存储在页面上的某个位置。可能是带有 ID 的隐藏文本区域。

一旦 xml 存储在页面上,您就可以使用弹出窗口中运行的以下 javascript 行来访问该值:

window.opener.document.getElementById('TextBox1').value;

When you make your ajax request with Jquery, in the callback function is where you should initiate the popup. When the response comes back, store the xml somewhere on the page. Possibly a hidden textarea with an Id.

Once the xml has been stored on the page, you can then access the value with the following line of javascript running inside the popup:

window.opener.document.getElementById('TextBox1').value;
骄兵必败 2024-11-13 19:07:18

经过多次尝试,使用所有可能的技巧和技巧,由于浏览器的安全策略,我所寻找的东西是不可能的。

After many try, with all possible tricks&hacks, what i was looking for is not possible, due to browser's security policy.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文