我有一个div,它有一个加载消息的事件,但是在该div中是一个单选按钮。我正在尝试做的是,如果选择了该div中的单选按钮,则停止div加载消息。我试过的是检测单选按钮是否被选中,如果是,则执行某些操作,否则显示该消息。问题是,它没有做它应该做的事情。 我认为这是因为它永远不会达到单选按钮的已检查状态,因为我首先点击了父div加载消息。
这是我到目前为止的代码。
function loadMessage(messageId,id)
{
var radioId = 'c' + id;
if($('#'+radioId).is(':checked')){
} else {
if(currentMail != messageId) {
currentMail = messageId;
var loc = 'ajax.php?ax=fetch-message&mx='+messageId;
messageContainer.load(loc);
$("#right").show();
expandRight()
} else {
currentMail = "";
minimizeRight(true);
$("#right").hide();
}
}
}`
这是html:
<div onclick="loadMessage('5ca477dd1d',4152)" class="row2 mail-message">
<input type="checkbox" id="c4152" name="c4152">
</div>
非常感谢任何帮助。
答案 0 :(得分:0)
首先是复选框而不是广播。
我认为要解决您的问题,请从checkbox
移除div
,因为当click
div
checkbox is automatically clicked
试试吧,
<div onclick="loadMessage('5ca477dd1d',4152)" class="row2 mail-message">
</div>
<input type="checkbox" id="c4152" name="c4152">
或者,您可bind
click event
转checkbox
而不是div element
等
<div class="row2 mail-message">
<input onclick="loadMessage('5ca477dd1d',4152)" type="checkbox" id="c4152" name="c4152">
</div>
另外,从code
我无法理解messageContainer
。