0
假設我有一個包含多個表單的頁面。當一個表單輸入信息時,其他表單的所有元素都應該被禁用。禁用除當前正在使用的表單中的所有表單元素
我曾嘗試選擇不同的是使用.not()
,然後讓使用:input
選擇每個輸入單元以及將所述disabled
屬性,但是當信息被輸入時,在所有的形式的所有元素獲得禁用當前一個所有表格不管使用哪種形式。
$('form').on("input", ":input", function() {
$('form').not(this).each(function() {
$(this).find(':input').prop('disabled', true);
});
});
Fiddle Link(很凌亂,但只是爲了演示) 當輸入到任何在頂部形式的元素的信息,在底模的所有內容應被禁用。
這很好用,謝謝!我以前認爲'.not(this)'將被視爲「不是這種形式」,因爲之前的形式。我可以簡單地進一步避免使用'.each()': '$('form')。not($(this).closest('form'))。find(':input')。 prop('disabled',true);' 再次感謝您的幫助! – cw1998
是的,不需要每個人,:) – Taplar