2012-11-16 203 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#,它会是什么样子?用户可以通过更改属性来攻击你的身边。