Jquery 即使选中了“我的单选按钮”,该字段也未启用

Jquery 即使选中了“我的单选按钮”,该字段也未启用,jquery,Jquery,我必须选择元素单选按钮和文本字段: <label><input id="GRP010" type="RADIO" value ="900">Radio button</label> <input id="AF92" maxlength="254" size="15" name="AF92"> 但是,如果我选择单选按钮,则文本字段为禁用和未启用。我如何做到这一点?谢谢没有名为已启用的属性它只是被禁用的,使用它可以做到这一点 $("#AF92

我必须选择元素单选按钮和文本字段:

<label><input id="GRP010" type="RADIO" value ="900">Radio button</label>
    <input id="AF92" maxlength="254" size="15" name="AF92">

但是,如果我选择单选按钮,则文本字段为禁用和未启用。我如何做到这一点?谢谢

没有名为
已启用的属性
它只是被禁用的,使用它可以做到这一点

$("#AF92").attr("disabled","disabled"); // will disable
$("#AF92").removeAttr("disabled"); // to enable
你还有其他问题。首先,您试图通过不存在的错误属性
name=“GRP010
来确定输入的目标,因为您有一个id,只需使用该id即可。此外,您没有事件处理程序来更改单选按钮更改后的输入状态,请参阅live

此外,最好以禁用状态启动输入

下面是事件处理程序

$('#GRP010').on('change', function(){
var checked = this.checked;

    if(checked && value2 == '900')
        $("#AF92").removeAttr("disabled");
    else
        $("#AF92").attr("disabled","disabled");
})

没有名为
enabled
的属性,只有禁用该属性才能使用它来执行此操作

$("#AF92").attr("disabled","disabled"); // will disable
$("#AF92").removeAttr("disabled"); // to enable
您还有其他问题。首先,您试图通过不存在的错误属性
name=“GRP010
来确定输入的目标,因为您有一个id,只需使用它即可。此外,当单选按钮更改时,您没有事件处理程序来更改输入的状态,请参阅live

此外,最好以禁用状态启动输入

下面是事件处理程序

$('#GRP010').on('change', function(){
var checked = this.checked;

    if(checked && value2 == '900')
        $("#AF92").removeAttr("disabled");
    else
        $("#AF92").attr("disabled","disabled");
})

要再次启用它,请使用以下命令:

$("#AF92").removeAttr("disabled")

要再次启用它,请使用以下命令:

$("#AF92").removeAttr("disabled")

该函数绑定到
ready
,因此只能在启动时进行检查。您需要单击单选按钮进行绑定以再次检查以启用禁用

内部文件准备写入

$(".radioclass").click(function(){
    if ($('#GRP010').val()) { //you actually don't need double check
        $("#AF92").removeAttr("disabled");
    } else {
       $("#AF92").attr("disabled",true);
    }
});

radioclass
为所有单选按钮提供公共类,或为这些单选按钮使用您的首选选择器。

该功能绑定到
就绪
,因此仅在启动时进行检查。您需要单击单选按钮进行绑定以再次检查以启用禁用

内部文件准备写入

$(".radioclass").click(function(){
    if ($('#GRP010').val()) { //you actually don't need double check
        $("#AF92").removeAttr("disabled");
    } else {
       $("#AF92").attr("disabled",true);
    }
});

radioclass
为所有单选按钮提供公共类,或为这些单选按钮使用您首选的选择器。

您应该处理单选按钮更改事件

$("#GRP010").bind('change', handler);

function handler(){
  var value2 = $('input:radio[name="GRP010"]').val();
        var checked2 = $('input:radio[name="GRP010"]').is(':checked');

 if (checked2 == true && value2 == '900')
       {
         $("#AF92").attr("enabled","enabled");
       }
 else {
            $("#AF92").removeAttr("disabled"); 

        }

}

它适合您。

您应该处理单选按钮更改事件

$("#GRP010").bind('change', handler);

function handler(){
  var value2 = $('input:radio[name="GRP010"]').val();
        var checked2 = $('input:radio[name="GRP010"]').is(':checked');

 if (checked2 == true && value2 == '900')
       {
         $("#AF92").attr("enabled","enabled");
       }
 else {
            $("#AF92").removeAttr("disabled"); 

        }

}
它适合你。

使用这个

<label><input id="GRP010" type="checkbox" value ="900">CheckBox</label>
<input id="AF92" maxlength="254" size="15" name="AF92">
用这个

<label><input id="GRP010" type="checkbox" value ="900">CheckBox</label>
<input id="AF92" maxlength="254" size="15" name="AF92">

您正在使用的选择器正在查找一个
单选按钮,该按钮的
名称
属性为
GRP010
——它没有。由于您有ID,因此只需将其用作选择器:
$(“#GRP010”)

您使用的选择器正在查找一个带有
名称
属性
GRP010
单选按钮-它没有。由于您有ID,只需将其用作选择器:
$(“#GRP010”)
自1.6以来,您可以使用

演示:

从1.6开始,您可以使用

演示:

使用

$(document).ready(function(){
    var value2 = $("#GRP010").val();
    var checked2 = $("#GRP010").is(':checked');

if (checked2 == true && value2 == '900')
   {
     $("#AF92").attr('readonly', false);
   }
else {
        $("#AF92").attr('readonly', true);

    }

});
使用



单击单选按钮后,value2和checked2的值是多少。您需要的是复选框,而不是单选按钮。此外,你的HTML是一团糟。
输入
不能在
标签
内。标签忽略了
属性的
。textfield没有类型。他们都没有名字。这里有太多的错误。这里没有像您在这里使用的那样启用的属性
$(“#AF92”).attr(“enabled”,“enabled”)。单击单选按钮后,value2和checked2的值是多少。您需要的是复选框,而不是单选按钮。此外,你的HTML是一团糟。
输入
不能在
标签
内。标签忽略了
属性的
。textfield没有类型。他们都没有名字。这里有太多的错误。这里没有像您在这里使用的那样启用的属性
$(“#AF92”).attr(“enabled”,“enabled”)。我刚刚更改了条件,但它没有启用。请尝试松开
.attr()
并使用
.prop()
完美。谢谢你,hsalama,所以muchI刚刚更改了条件,但它没有启用。请尝试松开
.attr()
并使用
.prop()
完美。非常感谢你,hsalama用新代码编辑你的问题,这样我们就可以看到问题的症结所在。试着松开
.attr()
并使用
.prop()
用新代码编辑你的问题,这样我们就可以看到问题的症结所在。试着松开
.attr()
并使用
.prop()
给出原因。我仍然相信它需要绑定到onclick on单选按钮。@deifwod不够有效:1。无法“启用”已禁用的项目,只能删除已禁用的属性。2.在“就绪”或“启动”时检查和操作字段是完全有效的。您不需要为此绑定事件。@dshai它不会在单击单选按钮时重新检查以启用它。这是用户需求。输入错误。。它应该是
$(“.radioclass”)
还有一件事。。
单选按钮
没有
名称
属性,选择器无法工作。使用
id
而不是代替投票人给出理由。我仍然相信它需要绑定到onclick on单选按钮。@deifwod不够有效:1。无法“启用”已禁用的项目,只能删除已禁用的属性。2.在“就绪”或“启动”时检查和操作字段是完全有效的。您不需要为此绑定事件。@dshai它不会在单击单选按钮时重新检查以启用它。这是用户需求。输入错误。。它应该是
$(“.radioclass”)
还有一件事。。
单选按钮
没有
名称
属性,选择器无法工作。使用
id
instead我用它检查控件是否进入内部,在发布前忘记删除此处我用它检查控件是否进入内部,在发布前忘记删除此处