2014-01-09 39 views
0

我希望用户点击表中的某个td来调用javascript函数,但它在IE中工作正常,但不能在Chrome和Firefox浏览器。点击事件不适用于Chrome和FireFox,但在IE浏览器中正常工作

<td id="tdMon" class="space15" style="cursor: pointer;" onclick="HandleClick1(this);"> 
    <div id="dvDay1" runat="server"> 
      <div class="booking-day"> 
      <asp:Label ID="lblDay1" runat="server" Text=""></asp:Label> 
      <asp:LinkButton ID="lnk1" runat="server" Text="" OnClick="lnk1_Click" CommandName="click" 
      CommandArgument=""></asp:LinkButton> 
      |&nbsp 
      <asp:Label ID="lblhr1" runat="server" Text="-- hr(s)" ForeColor="red"></asp:Label> 
     </div> 
     </div> 
</td> 

- 页面的自下而上 -

<script language='javascript' type='text/javascript'> 
function HandleClick1(objTD) { 
      var lnk = objTD.getElementsByTagName("a"); 
      if (lnk[0].disabled == false) 
       document.getElementById('<%=btn1.ClientID %>').click(); 
      else 
       return false; 
     } 
</script> 
+0

你闭上你的td标签? – Jacob

+0

是的,我关闭了td标签@Jacob ... –

+1

@Suresh Savage从你的脚本标记中取出:language ='javascript' –

回答

0

这是一个坏主意,有内联函数/样式。考虑到你已经有一个ID为你的TD:

function init(){ 
    document.getElementById('tdTue').onclick=function(){}; 
} 
window.onload=init; 
0

如果你想要去像jquery这样的东西,这可能是一个更好的模型。我相信这个功能只是一个例子。这只会触发具有data-link-rel属性的TD,并且它会搜索等效链接。

$(function() { 
    $("table").on("click", "td[data-link-rel]", function() { 
     var linkRel = $(this).data("link-rel"), 
      selector = "a[data-link=" + linkRel + "]"; 
     $(selector).trigger('click'); 

    }); 

    $("a").on("click", function() { 
     $("<li> I clicked on " + $(this).text() + "</li>").appendTo('ul'); 
    }); 

}); 

的jsfiddle与标记: http://jsfiddle.net/D8yg9/

+0

有没有人提到要使用jQuery? – Jacob

相关问题