2013-08-05 29 views
1

我想在新窗口中提交表單,並在提交後,我用新的URL重新加載當前窗口。以下是我的代碼。在新窗口提交表單,並用新的URL重新加載當前窗口

<form action="http://www.example.com/submit/" method="get" name="myform" id="myform" target="_blank"> 
    <div> 
     <div>Your Name:</div> 
     <div> 
      <input type="text" name="name" /> 
     </div> 
     <div> 
      <input type="image" src="http://www.example.com/submit_image.png" /> 
     </div> 
    </div> 
</form> 
<script type="text/javascript"> 
    $(document).ready(function(){ 
     $('#myform').submit(function(){ 
      window.location.href = 'http://www.google.com'; 
     }); 
    }); 
</script> 

這在Firefox和IE中運行正常,但在谷歌瀏覽器中無法運行。在chrome中的問題是,它在新窗口中提交表單,但它不會用新的url重新加載當前窗口。

任何人都可以爲此提出解決方案嗎?我的想法是,要在新窗口中提交此表單,並用不同的URL重新加載當前窗口。

+0

不要ü有anyy錯誤更換..?你檢查過瀏覽器控制檯嗎? –

+0

是的,我檢查過,但在控制檯中沒有錯誤。 –

回答

0

可能是這樣,你要添加

target='_blank' 

這應該是這樣的

<form action="http://www.example.com/submit/" method="get" name="myform" id="myform" target="_blank" > 
<div> 
    <div>Your Name:</div> 
    <div> 
     <input type="text" name="name" /> 
    </div> 
    <div> 
     <input type="image" src="http://www.example.com/submit_image.png" /> 
    </div> 
</div> 
</form> 

要重新加載當前頁面,使用location.reload();

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $('#myform').submit(function(){ 
     location.reload(); // window.location.href = 'http://www.google.com'; 
     }); 
    }); 
</script> 
+0

是的,我補充說,由於該屬性窗體正在新窗口提交。此外在jquery提交事件的代碼工作正常。它重新加載當前窗口。但它在Google Chrome中無法使用。 –

+0

然後,清除您的緩存,然後嘗試。 – Ravi

+0

我認爲,這是工作,在這裏檢查http://jsfiddle.net/dgKcn/ – Ravi

2

請試試這個代碼,可能對您有所幫助,

window.location.href = 'http://www.google.com'; 

與此代碼

setTimeout(function(){document.location.href = "google.com";},500); 
+0

這將打開新窗口。但我想在當前窗口中顯示www.xyz.com。 –

+1

請使用此代碼setTimeout(function(){document.location.href =「http://www.google.com」},500); –

+0

太棒了,它的工作原理。 –

相關問題