[英]Struts2: checkbox stuck as selected
我正在使用 Struts2 制作的網站上工作,但我遇到了復選框問題。
我有一個包含公司列表的下拉列表。 如果用戶在列表中沒有找到他的公司,他可以單擊復選框以將下拉列表替換為文本字段。 這是代碼:
JSP 的提取物:
<tr>
<td align="right" width="49%">
<table>
<sj:select id="company_select" name="company_select" list="company_list" .../>
</table>
</td>
<td colspan="2" align="left">
<table>
<s:hidden name="company_text" id="company_text" label="Company Type" disabled="true"/>
</table>
</td>
</tr>
<tr>
<td align=left>
<s:checkbox name="checkboxCompanyText" id="checkboxCompanyText" label="Company Not in the List"
fieldValue="false" onchange="showCompanyText()"/>
</td>
<td></td>
</tr>
JS function:
function showCompanyText() {
if(document.querySelector('#checkboxCompanyText').checked = "true") {
document.getElementById('company_text').type = "visible";
document.getElementById('company_text').disabled = false;
document.getElementById('company_select').style.display = "none";
}else{
document.getElementById('company_text').type = "hidden";
document.getElementById('company_text').disabled = true;
document.getElementById('company_select').style.display = "block";
}
}
當頁面加載時,復選框未選中,下拉菜單在這里並且文本輸入字段不可見。 好的。 當我選中復選框時,下拉菜單消失並出現文本字段。 再次:好。 但是當我嘗試取消選中該復選框時,它仍然處於選中狀態,無法取消選中它。
如果有人知道發生了什么,歡迎您。
有時,您的錯誤是如此明顯,以至於您看不到它。 我真誠地花了幾分鍾查看代碼試圖弄清楚發生了什么。 原來解決方案是將if(document.querySelector('#checkboxCompanyText').checked = "true")
轉換為if(document.querySelector('#checkboxCompanyText').checked === true)
。 有時我恨自己。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.