相关疑难解决方法(0)

JavaScript发布请求,如表单提交

我正在尝试将浏览器定向到其他页面.如果我想要一个GET请求,我可能会说

document.location.href = 'http://example.com/q=a';
Run Code Online (Sandbox Code Playgroud)

但是我试图访问的资源不会正常响应,除非我使用POST请求.如果这不是动态生成的,我可能会使用HTML

<form action="http://example.com/" method="POST">
  <input type="hidden" name="q" value="a">
</form>
Run Code Online (Sandbox Code Playgroud)

然后我只需从DOM提交表单.

但实际上我想要允许我说的JavaScript代码

post_to_url('http://example.com/', {'q':'a'});
Run Code Online (Sandbox Code Playgroud)

什么是最好的跨浏览器实现?

编辑

对不起,我不清楚.我需要一个改变浏览器位置的解决方案,就像提交表单一样.如果使用XMLHttpRequest可以实现这一点,那就不明显了.这不应该是异步的,也不应该使用XML,所以Ajax不是答案.

javascript forms post http submit

1465
推荐指数
17
解决办法
139万
查看次数

HTTP响应头中内容处置的使用

我发现以下asp.net代码在从数据库提供文件时非常有用:

Response.AppendHeader("content-disposition", "attachment; filename=" + fileName);
Run Code Online (Sandbox Code Playgroud)

这允许用户将文件保存到他们的计算机,然后决定如何使用它,而不是尝试使用该文件的浏览器.

使用内容处置响应标头还可以做些什么?

http httpresponse httpwebresponse content-disposition http-headers

122
推荐指数
4
解决办法
21万
查看次数

将值传递给窗口中的iframe

我需要向iframe发送一个值.

iframe存在于当前窗口中.我怎样才能做到这一点?

我需要在包含iframe的父窗口中使用javascript.

html javascript iframe

51
推荐指数
7
解决办法
10万
查看次数

IE问题:使用javascript将表单提交到iframe

我试图使用javascript创建一个iframe元素,如下所示:

var iframe = document.createElement('iframe');
iframe.setAttribute('name', 'frame_x');
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试使用新创建的iframe作为目标提交表单时,IE会打开一个新窗口,而不是使用iframe.

form.setAttribute('target', 'frame_x');
form.submit();
Run Code Online (Sandbox Code Playgroud)

这在Firefox中完美运行.此外,iframe已创建,但未使用.

javascript forms iframe

35
推荐指数
2
解决办法
3万
查看次数

如何使用HTTP POST请求将参数发送到Iframe

我必须使用POST方法将一些参数发送到IFRAME.我在这里阅读设置<iframe>的HTTP请求类型是不可能的.我正在考虑使用Javascript中的解决方案,但我无法实现它,因此我无法测试它是否是此问题的有效解决方案.我想问一下是否有人有同样的问题,如果有可能解决,在积极的情况下怎么办?

html javascript iframe http

25
推荐指数
3
解决办法
6万
查看次数

IE9提示用户提交隐藏的iFrame

我正在调试我们的文件上传脚本,它在不支持通过XMLHttpRequest对象发送文件数据的浏览器中使用隐藏的iframe.

关于在IE中提交iframe的文章和问题过多; (比如这篇文章这篇文章),但他们都引用了IE不能为你正确设置'name'属性这一事实.

下面的代码生成一个表单,其目标设置为iFrame的名称,但在提交表单时,IE9仍然提示我"你想打开还是保存photo_upload.json?",而不是将其加载到iFrame中.

var $iframe = $("<iframe id='" + id + "' name='" + id + "' />");
$('body').append($iframe);

$iframe.load(function () {
  console.log("loaded");  // this never happens in IE9
});

// pretend this form also has a file input object that gets populated
var $form = $('<form />').attr({
  method: "post",
  enctype: "multipart/form-data",
  action: "/photo_upload.json",
  target: id
});

$('body').append($form);
$form.submit();  
Run Code Online (Sandbox Code Playgroud)

此代码适用于FF和Chrome,但在IE9中,系统会提示您打开或保存" photo_upload.json ".如果我打开文件,IE9获得的响应是​​准确的.

有没有人有任何见解?是否有任何我缺少的iframe提交要通过?我是否需要设置某种标题来告诉IE不要这样打开它?谢谢!

解:

感谢@Kolink为我解决了这个问题的代码.

Rails服务器端代码,在photo_upload函数中:

if params[:from_iframe]
  render :json => @temp_photo, :content_type …
Run Code Online (Sandbox Code Playgroud)

javascript iframe jquery

9
推荐指数
1
解决办法
3409
查看次数

通过post方法将数据发送到iframe

我有一个指向moodle网站的iframe.我需要传递我的用户名和密码,以便在加载iframe时,我会自动登录moodle.所以我有这样的事情:

<div id="iframe" style="width:787px; height:700px;">
    <iframe id="iframeCon" src ="http://www.somesite.net/moodle/login/index.php"
            width="100%" height="100%" frameborder="0">

    </iframe>
</div>
Run Code Online (Sandbox Code Playgroud)

我的问题是如何使用POST方法将我的用户名和密码发送到此URL?

iframe post moodle

8
推荐指数
1
解决办法
4万
查看次数

Facebook应用程序 - 使用JavaScript获取signed_request

我有一个FaceBook应用程序.

有没有办法用JavaScript获取signed_request?

使用PHP它看起来像这样:$_REQUEST['signed_request']但我不能使用PHP.

facebook facebook-javascript-sdk facebook-apps

6
推荐指数
1
解决办法
9679
查看次数

设置<iframe>的HTTP请求类型

是否可以使iframe使用POST而不是GET请求?我不是试图将表单发布到iframe中,而是根据服务器上生成的数据加载iframe.

不幸的是,我不能在这种情况下使用Javascript(因为公司的政策是必须在没有JS的情况下结账).

html iframe

5
推荐指数
1
解决办法
3778
查看次数

为什么PHP没有通过POST和jquery看到文件上传?

我有这个HTML:

<form action='uploadhandle.php' method='POST' enctype="multipart/form-data">
<input type='file' class='fileinput' id='photo1' name='photo1'>
<input type='button' id='upload1' name='upload1' value='Upload'>
</form>
Run Code Online (Sandbox Code Playgroud)

我的jquery代码是:

$('#upload1').click(function(){
    $.ajax({
        url: "uploadhandle.php",
        data: 'photo1='+photo1,
        success: function(data){$('#result_div').html(data)}

        });
Run Code Online (Sandbox Code Playgroud)

在我的uploadhandle.php中,当我尝试显示$ _POST ['photo1']时,没有任何内容出现,它是"未定义的".有谁知道我做错了什么?

非常感谢,问候

php upload jquery file

0
推荐指数
1
解决办法
157
查看次数