Javascript OnBlur无法正常工作

时间:2011-03-09 15:37:11

标签: javascript html textbox radio onblur

我有一个默认禁用的文本框... onclick工作并允许输入,但当我点击单选按钮时...它不会再次禁用文本框

任何线索?

<input type="radio" name="group1" value="website" OnBlur="javascript:document.getElementById('websiteurl').disabled = true;" OnClick="javascript:document.getElementById('websiteurl').disabled = false;">
<input name="websiteurl" type="text" id="websiteurl" value="http://" size="50" disabled="true" />

提前致谢

5 个答案:

答案 0 :(得分:2)

没有“启用”属性。您必须将disabled设置为“disabled”才能禁用输入,或者删除属性“disabled”以启用它。

disabled =“true”是错误的语法,应禁用=“禁用”

答案 1 :(得分:0)

尝试使用disabled=true代替enabled=false

答案 2 :(得分:0)

没有属性enabled。您使用disabled并将其设置为truefalse

除此之外:

使用小写属性(否则它不是有效的XHTML);没有必要把javascript:放在它面前。 此外,最好从JavaScript代码中附加事件而不是内联它们。特别是如果你使用像jQuery这样的库,这非常容易:

$('input[name=group1][value=website]').blur(function() {
    $('#websiteurl').attr('disabled', 'true');
}).click(function() {
    $('#websiteurl').removeAttr('disabled');
});

(当然,#id会更好,而不是input[name=group1][value=website]选择器)

答案 3 :(得分:0)

更改已启用为已禁用,它将起作用。

没有启用的属性。

答案 4 :(得分:0)

在上下文中不完全确定,但在这种情况下,禁用或启用文本框的复选框是否更合适?

$('input[type="checkbox"]').click(function() {
    if (this.checked) {
        $('#websiteurl').removeAttr('disabled');
    }
    else {
        $('#websiteurl').attr('disabled', true);
    }
});
相关问题