Javascript:根据隐藏变量值更改按钮文本
我有一个默认值为“开”的隐藏变量,我想根据这个隐藏值将另一个按钮的文本从禁用更改为启用,如果隐藏字段值为“开”,则按钮文本为“禁用”,反之亦然。我试过了,但我的解决方案不起作用 隐藏字段Javascript:根据隐藏变量值更改按钮文本,javascript,Javascript,我有一个默认值为“开”的隐藏变量,我想根据这个隐藏值将另一个按钮的文本从禁用更改为启用,如果隐藏字段值为“开”,则按钮文本为“禁用”,反之亦然。我试过了,但我的解决方案不起作用 隐藏字段 <input name="hiddenV" type="hidden" id="hiddenValue<%=ud.getUserId()%>" value="on" /> OpendelDev():这是一个弹出对话框,类似于(您确定要禁用此用户)和“确定”按钮,可导致页面重新加
<input name="hiddenV" type="hidden" id="hiddenValue<%=ud.getUserId()%>" value="on" />
OpendelDev():这是一个弹出对话框,类似于(您确定要禁用此用户)和“确定”按钮,可导致页面重新加载
function openDelDiv(userId, userName) {
$("#userId_delete").val(userId);
$("#userName_delete").text(userName);
$("#delUserDiv").bPopup();
}
但是请记住,按钮被放置在jsp页面内的for循环中,因此每个按钮的id都会不同我认为您实际上在这里伪造了一个
然后,目标是为每个可能的值提供一个输入,以及一个按钮列表来切换它们。然后,您所要做的就是显示所需的按钮(即:如果选中状态“禁用”,则显示“启用”按钮,反之亦然)
(没有实际运行和测试,但spirit还在那里)您的代码看起来不错,有什么问题吗?在我单击按钮并重新加载页面后,按钮文本没有更改:((您确定隐藏字段值已更改吗?可能会保持为“开”(因此没有按钮文本更改)。请注意,这里的复选框或单选按钮都是假的。@Xeno有解决此问题的建议吗?您的代码很好!
function change(btn) {
var hiddenValue = document.getElementsByName("hiddenV")[0];
var disButton = document.getElementById(btn);
if (hiddenValue.value === "on")
disButton.value = "Disable";
else
disButton.value = "Enable";
}
function openDelDiv(userId, userName) {
$("#userId_delete").val(userId);
$("#userName_delete").text(userName);
$("#delUserDiv").bPopup();
}
<input type="radio" class="input-field" name="status" value="enabled" checked="checked" id="a"/>
<input type="radio" class="input-field" name="status" value="disabled" id="b"/>
<ul class="buttons">
<li>
<label class="enabling" for="a">
<button>Enable</span>
</label>
</li>
<li>
<label class="disabling" for="b">
<span>Disable</span>
</label>
</li>
</ul>
.input-field[value="enabled"]:checked ~ ul.buttons label.enabling,
.input-field[value="disabled"]:checked ~ ul.buttons label.disabling {
display: none;
}