2011-06-22 81 views
1

我想從asp.net代碼隱藏中使用onclientclick調用一個JavaScript函數作爲linkbutton。代碼是這樣的:從.net代碼隱藏中調用javascript函數,值爲

string x = "redirecttoimagepage"+"("+ y+")";//y has an int value i need and it varies 
lnkimagepage.OnClientClick = x; 

我需要在javascript函數中使用y值來使用。

function redirecttoimagepage(variable) 
{ 
var strURL = "Subpages.aspx?tabID="+variable; 
window.open(strURL,"_blank"); 
return true; 
} 

現在,與我共享的代碼,它不會做任何事情。點擊鏈接後,它保持在同一頁面中。我究竟做錯了什麼?感謝你們所有的幫助。非常感謝!

回答

4
string x = "redirecttoimagepage"+"('"+ y+"')"; 
lnkimagepage.Attributes.Add("onclick",x); 

EDITED

此外,只注意到lnkimagepageLinkButton所以這將是很難調用redirecttoimagepage腳本LinkButton已經與__doPostBack jscript相關聯。使用HyperLink代替LinkButton

+0

這與「OnClientClick」有何不同? – Domenic

+0

@Domenic asp.net 2.0(及以上版本)有一個'OnClientClick'屬性,這基本上是'Attributes [「onclick」]'的一個快捷方式。沒有區別......它只是我習慣於編寫代碼的一種方式... –

+0

好的,那麼我的問題是爲什麼這與OP的代碼有所不同。我想編輯後的東西是相關的,但否則它完全一樣。 – Domenic

1

我想從asp.net代碼隱藏中使用onclientclick調用一個JavaScript函數作爲linkbutton。代碼是這樣的:

你做錯了。 HTTP模型是一個請求模型。該頁面與服務器進行交談的方式並非相反。

如果真正需要一個雙向通信信道使用WebSockets

+0

好像他在做它(概念上右),但他的解釋是荒謬的。他似乎不知道「調用函數」是什麼意思。 – Stilgar

-1

我認爲你必須指定window.open不只是網頁名稱完整的URL .....

+0

這是錯誤的;它和任何其他URL一樣工作,可以是相對或絕對的。 – Domenic

+0

thanx糾正和幫助我... –

0
string x = "redirecttoimagepage"+"('"+ y+"')"; 
lnkimagepage.Attributes.Add("onclick",x); 

**in javascript** 
window.open("PageName.aspx"); 
相關問題