2012-05-03 35 views
1

我有這樣Default.aspx中的JavaScript功能:調用JavaScript函數的參數,並在頁面加載讀取返回值

function ReadValue(Name) { 
    Return value; 
} 
從頁面加載方法

現在,我想傳遞參數,並得到返回值服務器端變量。

+0

您能否提供更多信息?您是否希望將值設置爲服務器端元素(請注意:服務器端變量不能在JavaScript中使用)。如果這是你的情況,你可以嘗試隱藏域控制來設置值。 –

回答

1

要將數據從客戶端發送到服務器,必須將數據從客戶端發送到服務器。 :-)通常情況下,你可以用Ajax這樣做,雖然也有其他方法(做一個標準表格POST,或者甚至做一個GET某種類型的,但如果你的服務器將通過改變服務器狀態來處理信息,不應該使用GET)。

+0

謝謝..首先,告訴我如何在服務器端通過參數durin page_load調用此方法? –

+0

如果你正在'default.aspx'內部'script'元素中討論JavaScript函數,你不能。它運行**客戶端**,而不是服務器端。您可以在腳本中對其進行編碼,例如'ReadValue('foo');',但這會發生在用戶的瀏覽器中,而不是服務器上。然後,您可以使用Ajax將所有數據發回服務器,但這與服務器上發生的這種情況非常不同。 –

0

另一種方式是通過將值在服務器端控件 爲〔實施例jQuery中,你可以做這樣的事情:

function pageLoad(sender, args) { 
$("#txtMyTextBoxID").val('my value') 

}

ASPX:

<asp:TextBox ID="txtMyTextBoxID" runat="server" ClientIDMode="Static"></asp:TextBox> 
0

我會說最好的想法是做一個Javascript函數,並使服務器端Hiddenfield。訪問隱藏字段並將您的值(逗號分隔)存儲在您的隱藏字段中。並在頁面加載時訪問它。

我這樣做。

<asp:HiddenField ID="hdn" runat="server" /> 
document.getElementById("<%= hdn.ClientID%>").value = "your value"; 
相關問題