我想添加一些驗證到表單。我有一個jQuery的功能是做正是我想要的:jQuery - 試圖做一個if語句中的函數
jQuery('#post').submit(function() {
if (jQuery("#set-post-thumbnail").find('img').size() > 0) {
jQuery('#ajax-loading').hide();
jQuery('#publish').removeClass('button-primary-disabled');
return true;
}else{
alert("Please set a Featured Image!");
jQuery('#ajax-loading').hide();
jQuery('#publish').addClass('button-primary-disabled');
return false;
}
return false;
});
不過,我想改變它,這樣如果頁面上的其他地方單選按鈕選擇此功能只運行。所以我試過這個:
if (jQuery('#top').checked) {
jQuery('#post').submit(function() {
if (jQuery("#set-post-thumbnail").find('img').size() > 0) {
jQuery('#ajax-loading').hide();
jQuery('#publish').removeClass('button-primary-disabled');
return true;
}else{
alert("Please set a Featured Image!");
jQuery('#ajax-loading').hide();
jQuery('#publish').addClass('button-primary-disabled');
return false;
}
return false;
});
}
這不起作用 - 即使#top被選中,函數也不會被調用。誰能解釋爲什麼?我習慣於PHP,而JavaScript經常會向我投擲曲線球。
由於'if語句'返回,所以你不需要在'else語句'和'return false'中包含下一個部分兩次 –
它仍然沒有做任何事情...... Firebug不給我任何東西錯誤或任何事情。 – Gwendydd
啊哈!這確實解決了它!我不得不用jQuery替換$(這是一個WordPress站點,而WordPress對此非常挑剔)。非常感謝,RET,Roy和Greener! – Gwendydd