jQuery事件,WHILE选择被禁用

时间:2015-05-26 00:34:39

标签: javascript jquery

完全加载DOM后,页面上有两个选择字段。

当第一个的值改变时,将生成第二个的值,同时,它(第二个选择字段)被禁用(直到数据完全加载)并且一旦完成,它将被启用。

我想在禁用选择字段时禁用按钮。

我尝试了以下但不能让它正常工作

if ($('#mySelect').is(':disabled')) {
    $('input[type="submit"]').attr('disabled','disabled');
} else if ($('#mySelect').is(':enabled'))
{
 $('input[type="submit"]').removeAttr('disabled');
}

所以基本上它总是需要监听select禁用或启用事件。

任何解决方案都将受到赞赏。

3 个答案:

答案 0 :(得分:0)

您的问题中缺少这么多细节很难帮助,但您可以试试这个:

HTML

<select id="mySelect1">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<select id="mySelect2" disabled>
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
</select>
<input type="submit" value="Submit" disabled/>

的jQuery

$('#mySelect1').on('change', function () {
$('input[type="submit"], #mySelect2').attr('disabled', false);

});

Fiddle

我希望这会有所帮助。

答案 1 :(得分:0)

检查元素是否已禁用

if($('element').attr('disabled') == 'undefind'){
    alert('enabled');
}else{
    alert('disabled');
}

禁用元素

$('element').prop('disabled',true);

启用元素

$('element').prop('disabled',false);

答案 2 :(得分:0)

HTML

<button id="mySelect">ButtonA</button>
<input type="submit">ButtonB</input>

Jquery的

//Defining the jquery object for cache purpose in the future
var $obj1 = $("#mySelect");
var $obj2 = $("input[type='submit']");
//if the button is disabling.
if($obj1.prop("disabled")){
   $obj1.prop("disabled",true);
   $obj2.prop("disabled",$obj1.prop("disabled"));
}