2012-12-05 61 views
1

我有一個ASP.net 4.0網站進行修改。特別是,我想一個LinkBut​​ton控件的文本值設置爲一個文件名:通過JQuery和JSON設置ASP LinkBut​​ton控件的文本

<asp:LinkButton ID="LinkButtonFile1" runat="server" OnClick="GetFile"> 

我想這樣做與jQuery和JSON對象的客戶端:

var FileNames = { "name": "testing" }; 
var id = ('id=$LinkButtonFile1').val(); 
('id=$LinkButtonFile1').val() = FileNames.name 

我用'id = ..'因爲我正在使用母版頁,並且我從Google搜索中發現該問題是通過這樣做解決的。運行這個是在VS2010上調試顯示'val()'不是一個有效的屬性。我已經嘗試了很多變體,包括:

var FileNames = { "name": "testing" }; 
//var id = document.getElementById("<%= $LinkButtonFile1 %>"); 
//var id = document.getElementById('[id$=LinkButtonFile1]'); 
var id = document.getElementById('id$=LinkButtonFile1'); 

var id = document.getElementById('$LinkButtonFile1'); 
//('[id=$LinkButtonFile1]').val(FileNames.name); 

它返回id = null。

我搜索了很多網站試圖獲得正確的語法,但沒有任何工作適合我。任何人都可以告訴我正確的語法嗎?

謝謝

回答

3

您的設置值的語法錯誤。

變化

('id=$LinkButtonFile1').val() = FileNames.name 

('[id*=LinkButtonFile1]').text(FileNames.name); 

或使用ID而不是外卡,在這裏最好的辦法

('#<%= LinkButtonFile1.ClientID %>').text(FileNames.name); 
+0

我試過那給出的錯誤:對象不支持屬性或方法'val' –

+0

更新我的代碼現在試試吧 – Adil

+0

同樣的錯誤:對象不支持屬性或方法'val' –

0

我知道這個問題是舊的,但我一直在尋找相同的答案,並找不到任何幫助。經過大量的挖掘,提問等問題,我找到了解決方案,我認爲這對我們有幫助。

首先,讓我們看看你的LinkBut​​ton:

<asp:LinkButton ID="LinkButtonFile1" runat="server" OnClick="GetFile">

看跌的ClientIDMode = 「靜」,在那裏的某個地方。否則,當你跑的時候,你會得到類似於你的ID前綴「MainContent_」的東西。看看你的網頁源代碼來驗證。

其次,你是如何讓你的按鈕的持有...

var id = document.getElementById('id$=LinkButtonFile1');

的是的getElementById使用jQuery更多的JavaScript-Y混合。讓我們堅持一個.. jQuery。

$("#LinkButtonFile1").text(FileNames.name);

這應該允許你改變linkbutton的文本。如果這不起作用,可能嘗試將FileNames.name放在引號中,或者直接拉出實際文本。

相關問題