我有一个移动客户端并且有一个简单的问题。
这是我的html部分:
<label id="112233" for="checkbox-detailed_limit">Take Profit</label>
<input type="checkbox" name="checkbox-detailed_limit"
id="checkbox-detailed_limit" data-mini="true"/>
我想在显示容器页面时更改复选框的已检查状态。
我已经使用javascript和jquery进行此操作,但都失败了。
以下是一些例子:
$("#checkbox-detailed_limit").attr("checked", false).change();
$("#checkbox-detailed_limit").attr("checked", false).trigger("change");
$("#checkbox-detailed_limit").prop("checked", false);
$("#checkbox-detailed_limit").removeAttr("checked");
$('input:checkbox', $("#112233")).prop("checked", false);
$("#112233").filter(':checkbox').prop("checked", false);
$('input').filter(':checkbox').prop('checked',false);
$("#112233").children('input[type="checkbox"]').prop('checked', false);
$("#112233").find("checkbox").attr("checked", false);
document.getElementById("checkbox-detailed_limit").checked = false;
有什么办法可以帮助我吗?
答案 0 :(得分:2)
这实际上是一个jquery-mobile问题,因为这些复选框会得到增强。
$("#checkbox-detailed_limit").attr("checked",true).checkboxradio("refresh");
来源:http://jquerymobile.com/demos/1.2.0/docs/forms/checkboxes/methods.html
答案 1 :(得分:0)
我不确定你真正想要什么,但是你想将选中状态设置为复选框?那么这可以这样做。
$("#checkbox-detailed_limit").prop("checked", true); //for jquery 1.7+
$("#checkbox-detailed_limit").attr("checked", true); //for jquery < 1.7
答案 2 :(得分:0)
选中复选框:
$("#"+id).attr("checked", "checked");
取消选中复选框:
$("#"+id).removeAttr("checked");
答案 3 :(得分:0)
试试这个,
$("#checkbox-detailed_limit").prop("checked", true);
$("#checkbox-detailed_limit").prop("checked", false);
答案 4 :(得分:0)
$('input[name=foo]').attr('checked', !$('input[name=foo]').is(':checked'));
此脚本将切换复选框,应该可以正常工作。如果这不起作用,则在其他地方的javascript代码中会出现错误。使用控制台可以帮助您找到问题。