2014-10-26 57 views
1

我有一個基本的HTML表單,最後提交按鈕。問題是,我沒有調用表單頭中的「onsubmit」處理程序提供的Javascript函數。HTML表單提交不調用Javascript「onsubmit」處理程序在WordPress的後

<form name="Details" method="post" onsubmit="validateForm()" id="Details_Form_ID"> 

此處理函數在同一文件中定義如下:

<script type="text/javascript"> 
function validateForm() { 
    alert('I am an alert box!'); 
} 
</script> 

當我看到在Chrome工具的代碼,我注意到,上面的Javascript代碼本身就是一個<p>元素下包裝和沒有顯示爲「腳本」...下面截圖。我懷疑Javascript被當作純文本處理,因此不能執行。

enter image description here

如何克服呢?我正在使用wordpress並編輯了一個「帖子」以包含此代碼。

+0

在我的情況的問題是Ajax的表單處理程序表後不會被調用提交。相反,它會直接分支到表單中給出的'action'參數。 基本問題是由於Wordpress中WYSIWYG和HTML編輯器的重複切換,不知何故ajax表單提交處理程序通過插入![CDATA [。]自動註釋掉。 解決方案是在編輯wordpress文章時禁用WYSIWYG並刪除![CDATA [關鍵字前的關鍵字... – 2015-01-09 17:00:36

回答

0

對我而言,問題在於表單提交後沒有調用Ajax表單處理程序。相反,它會直接分支到表單中給出的'action'參數。基本問題是由於在wordpress中重複切換WYSIWYG和HTML編輯器,ajax表單提交處理程序通過插入![CDATA [。]自動註釋掉了。

的解決辦法是禁用所見即所得的編輯,同時wordpress的帖子和腳本之前刪除![CDATA [關鍵詞..

1

可能是它調用它,但頁面刷新嘗試防止錯誤操作,而不是檢查警報是否被調用?

onsubmit="validateForm(); return false;" 
+0

感謝您的評論。我試過了,但是preventDefault()也沒有幫助。我感覺到的問題在別的地方。它甚至不識別腳本本身,因此無法執行。 – 2014-10-26 16:21:38