2011-05-04 25 views
0

我正嘗試重置我的表單。我的復位按鈕是由於某種原因不工作:無法重置表單

<input id="btn_clearForm" type="reset" name="clearForm" value="Clear" /> 

所以我創造了這個功能做的工作:

jQuery('.clearButton').live('click',function() { 
    clearForm(jQuery('#brand_data_form')); 
}); 

function clearForm(form) { 
    jQuery(':input[type=text], :input[type=textarea]', form).val(''); 
    jQuery(':input[type=checkbox]', form).attr('checked', false); 
    jQuery('select', form).attr('selectedIndex', -1); 
    alert('test'); // <- At this point, the form is cleared 
} 

的問題是,clearForm功能運行後,該數據是放回到表格中。

我已經添加了alert以便我可以監視清除,並且每個表單域都被重置。但是當它完成時,它會再次被填充。

我不明白這裏有什麼問題。

+1

有*不使用簡單的''([JS小提琴](http://jsfiddle.net/davidThomas *的一個原因/ kJRm8/2 /)),或者一個''([JS Fiddle](http://jsfiddle.net/davidThomas/kJRm8/1/))button? – 2011-05-04 14:06:54

+0

因爲它目前不起作用。 – Steven 2011-05-04 14:11:42

+0

[無法重現](http://jsfiddle.net/PYTdn/) - 請發佈更多的代碼或使jsFiddle反映相同的問題。 – 2011-05-04 14:12:15

回答

1

「重置」按鈕會將窗體重置爲初始值。你正在尋找'清楚'的形式,這有點不同。由於您將「清除」功能附加到「重置」按鈕上,因此這兩個功能似乎是衝突的。我會改變你的輸入來鍵入按鈕,並應該清除它(沒有雙關語意圖)。

<input id="btn_clearForm" type="button" name="clearForm" value="Clear" /> 
+0

謝謝,解決了這個問題。當頁面被加載時,表單已被填充。單擊重置按鈕將因此將表單重新設置爲其值。將其更改爲按鈕並運行我的腳本解決了問題。 – Steven 2011-05-04 14:40:10