2012-03-08 227 views
1

我正在使用ASP.NET/C#Web應用程序 我有一個複選框。我想檢查時複選框來模擬一個按鈕,點擊/選中Javascript不適用於谷歌Chrome瀏覽器和智能手機瀏覽器

我用JavaScript來做到這一點

<input id="filtercheck" runat="server" type="checkbox" value="Filter" onclick="document.getElementById('Button1').click();"/> 

Button1的是一個普通按鈕

<asp:LinkButton ID="Button1" runat="server" OnClick="Button1_Click"/> 

所以,當我點擊複選框,就像我點擊Button1一樣。

一切工作正常的Firefox和Internet Explorer。但這不適用於谷歌瀏覽器和智能手機瀏覽器

我該如何解決這個問題?

此外還有一些其他的JavaScript和JQuery腳本正在使用Internet Explorer和Firefox,但不支持谷歌瀏覽器和智能手機瀏覽器。

我該怎麼做才能確保我的網站在所有瀏覽器上完全兼容?

非常感謝您的幫助

+0

jQuery在跨瀏覽器兼容性方面非常出色。使用jQuery來連接事件處理程序,您可能會獲得更好的結果。 – jrummell 2012-03-08 15:09:12

回答

0

編輯:是的,這是這第一件事情。 Chrome在linkBut​​ton上窒息而未按預期呈現。

我要問。該ID是否與HTML id屬性相同? asp「LinkBut​​ton」如何呈現爲HTML?

編輯:我會在這裏留下的情況下,以防其他人對asp.net shenanigans有麻煩的人有幫助。

你有你的驗證HTML。你在做什麼並不特別瘋狂。 HTML破損可能是原因。

此外,嘗試通過Chrome中的其他方式一次性啓用該功能。

一兩件事是有幫助的,雖然。從頁面中取出JavaScript並將其放入鏈接文件中。不要讓任何微軟產品告訴你任何關於通過按照他們的方式讓js更容易的事情。他們做過的最好的事情就是.net MVC,它會讓你無所適從。

編輯:等待。你在使用webforms嗎?這可能是你的問題。在這種情況下,你可能不得不開火,然後點擊那個愚蠢的東西。一些MS工程師會阻止人們找到一種簡單的方式在他們的周圍進行菊花鏈式連接。我通過了很多可怕的JS來找出那一段時間。

+0

你的第一個問題給了我答案。顯然,在谷歌瀏覽器中呈現asp「LinkBut​​ton」時出現錯誤。我改變了「LinkBut​​ton」爲一個簡單的「按鈕」,它的工作。謝謝。 (將此信息添加到您的答案,我將接受它作爲答案) – Youssef 2012-03-08 15:59:40

0

也許你需要Button1的客戶端ID?

document.getElementById('<%= Button1.ClientID %>').click() 
0

完全兼容所有瀏覽器?簡短的答案? No fancy stuff.

稍微長一點的答案就是做w3c規定的標準所允許的,並且希望所有的瀏覽器都符合標準。他們永遠不會100%。

0

如果你可以使用jQuery,我建議您使用trigger方法

編輯:作爲Koste指出的那樣,你也可能需要使用ClientID的,而不是實際的ID。

相關問題