提交后的HTML表单重定向

use*_*661 17 html forms

这是我的表单代码:

<form enctype="multipart/form-data" name="upload-file" method="post"  action="http://example.com/upload">
    <div class="formi">
        <input id="text-link-input" type="text" name="url" class="link_form" value="your link"  onfocus="if(this.value==this.defaultValue) this.value='';" onblur="if(this.value=='') this.value=this.defaultValue;"   />
        <input type="submit" value="OK" class="link_but" />
    </div>
    <div class="upl" title="Upload"><img src="http://example.com/example.png" alt="" style="vertical-align:middle;"/>Upload
        <input type="file" name="file" size="1" class="up" onchange = "document.getElementById('text-link-input').value = String(this.value).replace('C:\\fakepath\\','')"/>
    </div>
</form>
Run Code Online (Sandbox Code Playgroud)

现在,我想在提交表单数据后将提交者重定向到我选择的任何页面,但该操作位于我无法编辑的另一个网站上.在将数据提交到该网站后,是否可以将用户重定向到任何页面?

从一些谷歌搜索,这是我发现的.将此添加到表单代码:

onSubmit=window.location='http://google.com'
Run Code Online (Sandbox Code Playgroud)

这没用.也许我没有正确实现它?这就是我做的:

<form enctype="multipart/form-data" name="upload-file" method="post" onSubmit=window.location='http://google.com' action="http://example.com/upload">
Run Code Online (Sandbox Code Playgroud)

另一个人说添加一个隐藏的字段应该工作:

<input type="hidden" name="redirect" value="http://your.host/to/file.html"> 
Run Code Online (Sandbox Code Playgroud)

我该如何实现这是我的代码?

建议和帮助等待......

ggz*_*one 33

试试这个Javascript(jquery)代码.它是对外部URL的ajax请求.使用回调函数来触发任何代码:

<script type="text/javascript">
$(function() {
  $('form').submit(function(){
    $.post('http://example.com/upload', function() {
      window.location = 'http://google.com';
    });
    return false;
  });
});
</script>
Run Code Online (Sandbox Code Playgroud)

  • 想知道为什么这会被贬低?看起来对我来说是正确的方法(假设OP愿意使用jQuery).可能需要一个`return:false;`在那个提交处理程序中...... (2认同)