sub*_*bha 7 jquery jquery-mobile
jQuery的:
<script type="text/javascript">
function enableDisableButton() {
var isChecked = ($('input[name=ignore-checkbox]').is(':checked'));
if (isChecked == true) {
$("button[name=set-up-account]").removeAttr("disabled");
}
else {
$("button[name=set-up-account]").attr("disabled", "disabled");
}
}
$('#mobilePage').live('pageinit', function (event) { //document ready for jquery mobile
enableDisableButton();
$('#ignore-checkbox').bind("change", function () {
enableDisableButton();
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
HTML:
@using (Html.BeginForm("Account", "SetUpAccount", FormMethod.Post, new { @id = "account-set-up", @data_ajax = "false" }))
{
<div class="ui-grid-a field">
<div class="ui-block-a" style="width:140px;">
<label for="ignore-checkbox">Ignore</label>
<input type="checkbox" name="ignore-checkbox" id="ignore-checkbox"/>
</div>
</div>
<div style="width:100%;float:left;">
<button type="submit" name="set-up-account" id="set-up-account" data-inline="true" data-mini="true">Set Up Account</button>
</div>
}
Run Code Online (Sandbox Code Playgroud)
我想Set Up Account基于复选框选中属性启用/禁用该按钮.如果选中复选框,则启用该按钮,否则禁用.在页面加载时,我正在禁用该按钮
我面临的问题是,
在页面加载时,它禁用按钮,但它没有根据复选框的更改事件添加/删除禁用的属性,我在firebug中检查,它根据已检查和未检查的值正确进入循环.
注意:我使用的是Jquery mobile 1.2和jquery 1.7.此外,在发布此处之前,我在谷歌搜索,根据复选框选中的值启用和禁用按钮下有很多帖子.但没有人能解决我的问题.
有什么问题?请帮我
谢谢...
小智 35
我不确定这是否有助于解决您的主要问题,但根据http://api.jquery.com/prop/,您应该使用.prop()函数添加和删除已禁用的属性,而不是.attr ()和.removeAttr()函数.
要添加属性:
.prop("disabled", true);
Run Code Online (Sandbox Code Playgroud)
要删除该属性:
.prop("disabled", false);
Run Code Online (Sandbox Code Playgroud)
我在寻找上述信息时偶然发现了这个问题,所以我想我会分享.
由于Jquery Mobile,它没有启用按钮.在JQM中,我们需要刷新表单元素,同时操作它
解决方案是
function enableDisableButton() {
var isChecked = ($('input[name=ignore-checkbox]').is(':checked'));
if (isChecked) {
$("button[name='set-up-account']").removeAttr("disabled").button('refresh');
}
else {
$("button[name='set-up-account']").attr("disabled", "disabled").button('refresh');
}
}
$('#mobilePage').live('pageinit', function (event) {
enableDisableButton();
$('#ignore-checkbox').bind("change", function () {
enableDisableButton();
});
});
Run Code Online (Sandbox Code Playgroud)
这个问题通过添加来解决
.button('refresh');
Run Code Online (Sandbox Code Playgroud)
小智 6
像这个
$('#setagb').change(function(){
if ($(this).is(':checked'))
{
$("#submit").removeAttr("disabled");
}
else
{
$("#submit").attr( "disabled", "disabled" );
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
58373 次 |
| 最近记录: |