jquery .bind для изображения на клик не работает в Firefox? - PullRequest
1 голос
/ 06 апреля 2011

Интересно, почему приведенный ниже код отлично работает в IE, но не в Firefox (3.6.15)?

HTML:

<input type="image" name="btbuy1" id="btbuy1" src="img/buy.gif" disabled="disabled"/>

JavaScript:

EnableBuyButton(btbuy1);

function EnableBuyButton(ABtnId)
{
    var btElement = document.getElementById(ABtnId);
    btElement.setAttribute("disabled", "");
    $('#' + ABtnId).bind('click', function ()
    {
        alert('User clicked buy btn');
    });
}

Ответы [ 4 ]

1 голос
/ 06 апреля 2011

Посмотрите, я также немного прибрался http://jsfiddle.net/bkKNU/

<input type="image" name="btbuy1" id="btbuy1" src="img/buy.gif" disabled="disabled"/>

EnableBuyButton("btbuy1");

function EnableBuyButton(ABtnId)
{
    $('#' + ABtnId).attr("disabled","").bind('click', function ()
        {
            alert('User clicked buy btn');
        });
}
0 голосов
/ 06 апреля 2011
function EnableButton(id)
{
    $('#' + id)
    .removeAttr("disabled")
    .click(function ()
    {
        alert('User clicked buy btn');
    });
}
0 голосов
/ 06 апреля 2011

Попробуйте:

$(function() {  
    var EnableBuyButton = function(ABtnId)
    {
            var btElement = $('#' + ABtnId);
            btElement.attr("disabled", "");
            btElement.bind('click', function ()
            {
                alert('User clicked buy btn');
            });
    }

    EnableBuyButton('btbuy1');
});

Надеюсь, это поможет

jsfiddle: http://jsfiddle.net/aPvgm/1/

0 голосов
/ 06 апреля 2011

Вы хотите использовать идентификатор, но на самом деле вы используете элемент Html, идентифицируемый идентификатором,

попробовать

EnableBuyButton('btbuy1');

вместо

EnableBuyButton(btbuy1);

Вы также можете вызвать селектор Jquery с самим элементом

$(btElement)
...