我在網上看到的所有教程都定義了即時響應事件處理函數的函數。我正在嘗試在提交表單時調用JS函數,但它的工作原理並不正確。在PHP中:jquery調用預定義函數?
echo "$(document).ready(function() { $(\"#newDate\").submit(ValidateForm('".$ID."')); });";
當用戶點擊輸入字段時,而不是提交我的表單,我需要它調用一個javascript函數。這行代碼在無限循環中反覆調用我的函數。
我在網上看到的所有教程都定義了即時響應事件處理函數的函數。我正在嘗試在提交表單時調用JS函數,但它的工作原理並不正確。在PHP中:jquery調用預定義函數?
echo "$(document).ready(function() { $(\"#newDate\").submit(ValidateForm('".$ID."')); });";
當用戶點擊輸入字段時,而不是提交我的表單,我需要它調用一個javascript函數。這行代碼在無限循環中反覆調用我的函數。
你需要一個匿名函數來包裹它,就像這樣:
echo "$(document).ready(function() { $('#newDate').submit(function() { ValidateForm('".$ID."'); }); });";
我改成單引號就#newDate
也只是因爲它是一個有點清潔我,如果它不工作你只是離開\"
風格......這與實際問題無關。
沒有匿名函數它試圖驗證字段立即和結果分配到事件處理程序,這是你不追求的。
關閉。它應該是這樣的:
echo "$(function() {\n\t",
"$('#newDate').submit(function() {\n\t\t",
"ValidateForm('" . $ID . "');\n\t",
"});\n});";
我加了一些格式,使你一旦檢查源東西看起來更具可讀性。
注意新的匿名函數。這會讓事情適合你。