2009-01-13 118 views
1

大家好位於用戶控制ASP控制,如何訪問通過JavaScript

我設計的用戶控件,簡要它包含一個asp:HiddenField控件,我要通過JavaScript進行訪問功能這樣

function doAnyThing 
{ 
    var myVar = document.getElementById("myHiddenFiled"); 
} 

但是當我跟蹤我的代碼,我發現分配給空myVar的,這很重要

document.getElementById() 

方法是在使用使用r。控制文件(.ascx)或常規(.aspx)文件中,考慮到它在(.aspx)文件中正常工作

回答

9

您必須通過ClientID設置控件的最終標識,這取決於你的頁面結構。 試試這個:

function doAnyThing 
{ 
    var myVar = document.getElementById("<%= yourControlServerID.ClientID %>"); 
} 

顯然這個功能需要被放置在.aspx文件。我建議你改用像jQuery這樣的框架,它允許你通過更多的sofistic選擇器來檢索控件。這種情況將通過以下方式解決:

$("[id$=yourControlServerID]"); 

並且您甚至可以將您的JavaScript代碼放置在外部.js文件中。

+0

謝謝tanathos。 它爲我工作。 – 2010-06-29 08:25:14

2

簡化您可以使用:

JQuery的

$("<%= yourControlServerID.ClientID %>"). .... 

ASP.NET的JavaScript註釋:

var myVar = $get("<%= yourControlServerID.ClientID %>"); 

的ASP.NET的JavaScript代碼的註釋是一樣的:

var myVar = document.getElementById("<%= yourControlServerID.ClientID %>")