2009-05-19 101 views
0

我正在使用以下代碼調用javascript函數,但OnClientClick表達式從不計算。OnClientClick和調用自定義JavaScript函數

<asp:Button ID="btn1" UseSubmitBehavior="false" 
OnClientClick='moveComment(txtComment_<%# Eval("Container.DataItemIndex") %>)' 
runat="server" Text="add comment"/> 
+0

編輯的代碼,以消除滾動。 – 2009-05-19 20:29:56

+1

從它看起來像你有你的按鈕設置它是調用一個JavaScript函數,而不是一個codebehind方法正確的方式? – TStamper 2009-05-19 20:30:40

回答

1

下面是答案:

保護串GETID(字符串索引) { 回報 「moveComment('txtComment _」 +指數:在服務器端

<asp:Button ID="btn1" UseSubmitBehavior="false" OnClientClick='<%#  
GetId(Container.DataItemIndex.ToString()) %>' runat="server" Text="add comment"/> 

而且GETID方法+ 「')」; }

0

我相信加入「return false;」到您的OnClientClick表達式將解決您的問題。這將阻止按鈕進行回發,但仍會執行您的客戶端JavaScript功能。

<asp:Button ID="btn1" UseSubmitBehavior="false" OnClientClick='moveComment(txtComment_<%# Eval("Container.DataItemIndex") %>); return false;' runat="server" Text="add comment"/> 
1
OnClientClick='<%# "GetId(" +Container.DataItemIndex.ToString()+ "); " %>'