首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.button("disable")不工作

.button("disable")不工作
EN

Stack Overflow用户
提问于 2012-08-02 18:08:15
回答 5查看 527关注 0票数 1

我有一个名为customer-delete的按钮,当客户有一些信息时,它应该被禁用,如果客户没有这样的信息,它应该被启用。

我的代码是这样的:

代码语言:javascript
复制
if(customer.name!=null && customer.email!=null){
    $("#customer-delete").button("disable");
    console.info("disabled");
}else{
    $("#customer-delete").button("enable");
    console.info("enabled");
}

但这并不能正常工作。console正确地显示它,因此这意味着逻辑没有问题,但该按钮始终处于启用状态。

有人能给我一个解决方案吗?

EN

回答 5

Stack Overflow用户

发布于 2012-08-02 18:13:08

使用.prop()

代码语言:javascript
复制
$("#customer-delete").prop("disabled",true);

.removeProp()

代码语言:javascript
复制
$("#customer-delete").prop("disabled",true);
// is the same as:
$("#customer-delete").removeProp("disabled");

在jQuery 1.6版之前,请使用.attr()

或者,当使用jQuery UI时,您可以将其作为参数-对象进行传递:

代码语言:javascript
复制
$("#customer-delete").button({ disabled: true });

或者在使用setter-method进行初始化之后:

代码语言:javascript
复制
$("#customer-delete").button( "option", "disabled", true );

编辑:

很抱歉忽略了jquery-mobile标记。根据docs,您的试用.button("disable")是正确的。现在有几种可能性:

  1. 这份文件写道:我不能从你给出的上下文中判断,这是否适合你。

以下方法仅适用于表单按钮。基于链接的按钮没有任何关联的方法。

  1. 您的选择器与代码中其他位置的correctly.
  2. Conflicts不匹配。
票数 2
EN

Stack Overflow用户

发布于 2012-08-02 18:12:46

代码语言:javascript
复制
if(customer.name!=null && customer.email!=null){
    $("#customer-delete").attr("disabled", "disabled");
    console.info("disabled");
}else{
    $("#customer-delete").removeAttr("disabled");
    console.info("enabled");
}
票数 0
EN

Stack Overflow用户

发布于 2012-08-02 18:12:57

尝尝这个

代码语言:javascript
复制
if(customer.name!=null && customer.email!=null){
    $("#customer-delete").attr("disabled", true);
}else{
    $("#customer-delete").attr("disabled", false);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11775298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档