2012-07-11 64 views
2

我有我的jQuery代码的问题,我想说如果“是”按钮打开,禁用“否”按钮,否则如果“否”按钮打开,然后禁用“是”按钮,否则启用这两个按钮。jquery如果语句不能正常工作

但此刻按钮被禁用时,另一个按钮打开,有谁知道这是为什么?

下面是代码:

function btnclick(btn) 
{ 
    var context = $(btn).parents('#optionAndAnswer'); 
    if (context.length == 0) { 
     context = $(btn).parents('tr'); 
    } 

$(btn).toggleClass("answerBtnsOff"); 
$(btn).toggleClass("answerBtnsOn"); 

    if ($("#answerYes", context).hasClass('.answerBtnsOn')) { 
     $("#answerNo", context).attr("disabled", "disabled"); 
    } 

    else if ($("#answerNo", context).hasClass('.answerBtnsOn')) { 
     $("#answerYes", context).attr("disabled", "disabled"); 
    } 

    else { 
    $("#answerYes", context).removeAttr("disabled"); 
    $("#answerNo", context).removeAttr("disabled"); 
    } 


    return false; 
} 
下面

是既肯定html和无按钮:

Yes按钮:

<input class="answerBtns answers answerBtnsOff" name="answerYesName" id="answerYes" type="button" value="Yes"  onclick="btnclick(this);"/> 

没有按钮:

<input class="answerBtns answers answerBtnsOff" name="answerNoName" id="answerNo"  type="button" value="No"  onclick="btnclick(this);"/> 
+1

这段时间这个问题是什么不同于你的[其他](http://stackoverflow.com/questions/11379865)[问题](http:// stackoverflow。 (http://stackoverflow.com/questions/11423744)关于[StackOverflow](http://stackoverflow.com/users/1490145/user1490145?tab=questions) – 2012-07-11 00:14:43

+0

哦,我没有了解这些问题,我们有一群人,我们使用这个帐户来询问我们可能有的任何编程问题,我们的一些小组成员必须问一些与此应用程序有关的问题,但是这个问题是问如何禁用和不可禁用按钮 – user1490145 2012-07-11 00:19:26

+0

单选按钮是不是这种类型的东西?如果你想使用按钮不是更好的做法,点击“是”会自动取消选择“否”而不是禁用它?否则,用户如何改变主意? – nnnnnn 2012-07-11 00:20:27

回答

2

你不要把.在toggleClass/hasClass/removeClass/...您只在选择器中使用它们

0

将这两个按钮的.attr("disabled", "disabled");更改为此.attr("disabled", true);。此外,你会想要删除像@Musa说

+1

你提到'.prop(“disabled”,true);'? http://stackoverflow.com/a/1414366/17447 – naveen 2012-07-11 00:14:55