0

如果我的代码是移动设备的标准,任何人都可以检查和建议吗?我似乎无法让它在 iPhone 和我的 android 上运行。这适用于我的桌面,但不适用于移动设备。我正在尝试创建一个切换复选框,当用户选中复选框时它将显示按钮,如果取消选中它将显示禁用版本('#disableBtn')

Javascript + Jquery

$(function()
{   
    $('#agreed').change(function()
    {
        if ($(this).attr("checked"))
        {
            $('#disableBtn').hide();
            $('#button').css('display', 'block');
            return;
        }
        $('#disableBtn').show();
        $('#button').css('display', 'none')
    });
})

HTML

<input id="agreed" type="checkbox" name="check" value="1">

<a id="button" href="#>">Button</a>
<span id="disableBtn">Disabled</span>

CSS

#button { display: none }
4

1 回答 1

1

if ($(this).attr("checked"))完全错误,我不敢相信它可以在您的桌面浏览器上运行。您的代码检查输入是否有属性checked- 不,永远不会有。请参阅http://api.jquery.com/prop/ - 它甚至在解释中使用“已检查”。相反,它应该是

if (this.checked) {
...

除此之外,按钮和输入(如果您使用真正的按钮,而不是锚点 - 另请参阅更改禁用链接的外观)具有原生属性disabled。用它。

于 2012-04-10T17:11:17.897 回答