2011-04-06 77 views
1

我不知道爲什麼下面的代碼在IE中能正常工作,但不是Firefox(3.6.15)?jquery.bind的圖像onclick不工作在Firefox?

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'); 
    }); 
} 

回答

1

看一看,我也做了一些整理了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

你想用一個id,但是你實際上是使用由id標識的HTML元素,

嘗試

EnableBuyButton('btbuy1'); 

EnableBuyButton(btbuy1); 

代替您也可以撥打jQuery選擇與元素本身

$(btElement) 
0
function EnableButton(id) 
{ 
    $('#' + id) 
    .removeAttr("disabled") 
    .click(function() 
    { 
     alert('User clicked buy btn'); 
    }); 
} 
0

試試這個:

$(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/