2012-05-08 40 views
0

是的這個問題被問了一些時間。但我找不到我的問題的答案。 我在這裏發佈我的問題,因爲它是更多的PHP/JavaScript相關,然後Drupal我猜。打開新窗口/標籤後表單提交使用JavaScript的drupal調用

所以基本上我有一個表單驗證,並在提交部分我有一個(Drupal鉤子)函數在PHP中,我可以添加/修改代碼。 該函數捕獲表單域並將它們存儲在數據庫中。 這意味着字段被正確填充,所以我想在這裏實現一些東西,爲用戶打開一個新標籤頁或窗口而不關閉當前頁面。

所以我知道你不能從PHP調用JavaScript來使用類似window.open()的東西,但無論如何,我可以使它成爲這樣window.open()被稱爲?

我也打開了一些不同的方法,如果你有任何。

回答

1

您可以使用錨元素都提交表單,並打開一個新窗口:

<script> 

    function submitMyForm() 
    { 
     // Validate form fields here 
     // ... 

     // If form is valid, submit it 
     myForm.submit(); 
    } 

</script> 

<a href="javascript:submitMyForm();" target="_blank">Submit Form</a> 
+0

不過,如果表單提交,但該字段沒有填寫正確,用戶被引導到一個新的窗口? – FLY

+0

所以你調用一個驗證並提交它的函數。看我的編輯。 –

+0

如果我不想用javascript進行驗證(我的表單使用php進行驗證),我實際上通過在處理成功表單提交的着陸頁上放置'window.open()'來修復它。一個問題仍然存在,儘管...... window.open()被看作是一個彈出窗口,並被現代瀏覽器攔截。 – FLY

相關問題