2011-09-01 39 views
0

我已經創建了一個用於顯示選定員工數據的小型Web應用程序。在這個應用程序,我已經創建了一個帶有用戶名詳細信息的dropdownbox,並且每個用戶都有一個複選框。這些用戶名來自數據庫。

我希望該經理下拉列表並選擇他想要查看詳細信息的員工。我在javascript的幫助下完成了這個工作,但問題是,當它從母版頁中分離出來時,它成功地在下拉菜單中顯示用戶名,但是當我將它與母版頁合併時,就意味着使它成爲該母版頁的內容頁在下拉菜單中顯示用戶名。

它顯示爲空白。我在哪裏做錯了。任何建議將不勝感激。
在此先感謝。無法通過asp.net中的javascript獲取內容頁面中的數據

回答

1

正如Pleun所說,masterpage會更改呈現給瀏覽器的HTML控件id。有這一輪幾個方法如果您正在使用asp.net 4您可以按如下方式指定客戶端ID:

<asp:Label Text="text" runat="server" ID="SomeID" ClientIDMode="Static" /> 

將維持呈現到瀏覽器的ID。

如果你是用戶以前版本的asp.net的話,我傾向於用戶jQuery來獲得使用類似的控件:

$("[id$='SomeId']") 

$=手段與結束。

您還可以將用戶服務器標記與JavaScript代碼混合,例如然後

var control = document.getElementById("<% =SomeId.ClientId %>"); 

asp.net會呈現出什麼客戶端ID爲其分配一個服務器ID控制SomeId

+0

感謝您的回覆。我嘗試過,但沒有解決方案。其實我需要運行JavaScript代碼到Masterpage或內容頁面。但它可以在分開的默認頁面中成功運行。我認爲我的內容頁面代碼無法通過document.getElementById('ddlLoginName')在javascript中定義的內容頁面中獲取控件ID。如果您有任何其他解決方案,請幫助我。 –

0

你需要給控件的客戶端ID的功能。 當您使用母版頁面時,ur控件的id發生變化。 對於如: 複選框chktest的clientID的將是chktest無主page.But與母版ClientID的變化像「ctl00_ContentPlaceHolder1_chktest」

因此,如果您使用的是母版頁和你的函數時使用chktest的JavaScript將無法檢測不會像預期的那樣工作。所以使用控件的clientId。

相關問題