iT邦幫忙

0

如何使區塊內 display:none 時裡面的欄位值也無效,使表單完全無視?

例如

<div class="abc">
<input name="name">
</div>

當我用jquery把 $('.abc').hide()
假設我有判斷如果空的話就出現錯誤「請輸入 name」
此時即便我把abc隱藏了,還是一樣會出現錯誤「請輸入 name」
原本我是想說用 remove()直接把 ele刪除,但這樣我又要再叫出來append()
這樣就變得不是很靈活
請問還有什麼方法可以做到嗎?
先謝謝大大了!

wingkawa iT邦新手 4 級 ‧ 2018-11-15 09:12:26 檢舉
試試看設成disabled

2 個回答

1
youarefat
iT邦新手 5 級 ‧ 2018-11-15 14:19:32
最佳解答

當我用jquery把 $('.abc').hide()後
假設我有判斷如果空的話就出現錯誤「請輸入 name」

我感覺 比較簡單的方法是
在你判斷是否空的時候 排除掉那些被隱藏的東西

$(selector).not(':hidden'); 

這樣就不會選到被隱藏的東西了
也不用每個都加disable

0
wonderyu
iT邦新手 5 級 ‧ 2018-11-15 09:16:03

可以考慮用disabled這個屬性來停用輸入欄位

$('input[name=name]').attr('disabled', true);
小松菜奈 iT邦研究生 4 級 ‧ 2018-11-15 12:22:29 檢舉

也就是說我要把該div 裡面所有input都disabled

wonderyu iT邦新手 5 級 ‧ 2018-11-17 09:14:02 檢舉

透過jquery應該可以ㄧ次select該div裡面所有input

我要發表回答

立即登入回答