2012-11-16 259 views
0

我有一個用戶控件。我爲該用戶控件設置屬性,如:設置屬性值

public string SelectedValue 
{ 
    get { return _selectedValue; } 
    set { _selectedValue = value; } 
} 

我需要使用Javascript爲「SelectedValue」指定一個值。我怎樣才能做到這一點?

+1

如果您想獲得答案,添加更多代碼 – Mihai

+0

這是什麼?它看起來像C#,但你不能從Javascript中設置C#的值... – tjameson

回答

0

假設你正在使用C#,假設你有機會獲得一些對象具有屬性SelectedValue,你可以是這樣做的:

var value = "<%# YourObject.SelectedValue%>"; 

,或者,如果您正在使用剃刀和MVC工作:

var value = "@YourObject.SelectedValue"; 

如果你想把這個發送到服務器端代碼,你需要像Zaheer Ahmed所說的那樣,將ajax或者保存在cookie中。

但是有這麼多的假設,也許你可以發佈一些更多的代碼,並提供一些更多的細節。

0

您不能從客戶端(js)設置C#屬性。你可以使用ajax來完成一些工作,但你無法操縱服務器端代碼。

如果您想了解更詳細的解釋,請參見asp.net的實際工作原理,它的生命週期等,把它簡單的方法是這樣的:

用戶發送使用他的瀏覽器向服務器發出請求。服務器接收它,創建一個請求的頁面並實例化所需的類等等。然後它被解析並作爲html(以及其他資源,如圖像,CSS等)發送到客戶端。實例化的頁面類不能被客戶端訪問和修改,因爲它已經被服務器刷新了。每個請求都會創建一個新實例。無論如何,無論如何都不能用js修改c#,但反之亦然。你能想象一下,如果你可以使用一些js來修改遠程服務器上的C#,它會是什麼樣子?用戶可以通過更改屬性來攻擊你的身邊。