我試圖檢測一個html元素是否可見或不使用jquery。檢測元素是否可見(不使用jQuery)
上下文:
在忘記用戶密碼頁面,我有一個表格,其中用戶輸入上提交自己的登錄名和點擊。之後,如果他設置了一個chalenge問題,它將被顯示,他將能夠回答這個問題並再次提交。 (之前的相同按鈕)。
我的問題:當用戶點擊提交,在IE中,如果他點擊了幾次
,他會得到一個電子郵件,他每點擊它的時間。
我想什麼:
我想點擊這個提交按鈕後,關閉按鈕,但我只能禁用它,如果兩個條件是正確的:
- 如果用戶已經提供他的登錄名(沒有錯誤)。
- 用戶有一個chalenge問題註冊,他回答正確。
我不能改變這個過程,所以我想過在答案的字段中添加一個id並檢查它是否可見。如果是,並且用戶單擊提交按鈕,我想要在標籤上應用屬性禁用按鈕。我不知道的是如何做到這一點,而不使用jQuery。
使用jQuery我可以做這樣的事情:
if($('#secretAns').is(':visible')) {
//i think it could be the solution
$('#general_Submit.Label').attr(disabled, disabled);
}
適用於:
<div id="secretAns" class="loginTxtFieldWrapper">
<font color='red'>*</font><input type="text" name="secretAns" />
<input type="hidden" name="isAnswerPage" value="1"/>
</div>
<p id="loginSubmitLink">
<input id="general_Submit.Label" type="submit" value="general_Submit.Label" />" />
</p>
我覺得很難尋找純JavaScript的解決方案,因爲每個人都傾向於使用jQuery和我不能在我的應用程序中使用它,所以如果有人可以幫助我用純JavaScript來做到這一點,我會感激。
檢查jQuery的源代碼,看看他們在用':visible'選擇器做什麼。 – gdoron
可能重複[Javascript:如何檢查元素是否可見?](http://stackoverflow.com/questions/11391452/javascript-how-to-check-if-element-is-visible) – xyz
@Ajinkya,你注意到「重複」是一個jQuery問題,對吧? – gdoron