0

我有一个用户控件。我为该用户控件设置了一个属性,例如:

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

我需要使用 Javascript 为具有“SelectedValue”的属性分配一个值。我怎样才能做到这一点?

4

2 回答 2

0

假设您使用的是 C#,并假设您可以访问某些具有属性的对象SelectedValue,您可以这样做:

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

或者,如果您正在使用 Razor 和 MVC:

var value = "@YourObject.SelectedValue"; 

如果要将其发送到服务器端代码,则需要按照 Zaheer Ahmed 所说的进行 ajax 或将值保存在 cookie 中。

但是有这么多假设,也许您可​​以发布更多代码并提供更多详细信息。

于 2012-11-16T07:28:27.973 回答
0

您不能从客户端 (js) 设置 C# 属性。您可以使用 ajax 做一些工作,但您根本无法操作服务器端代码。

如果您想了解更长的解释,请查看 asp.net 的实际工作原理,它的生命周期等。简单的说法是这样的:

用户使用他的浏览器向服务器发送请求。服务器接收它,创建一个请求的页面并实例化所需的类等。然后它被解析并作为 html 发送到客户端(当然还有其他资源,如图像、css ......)。实例化的页面类以后不能被客户端访问和修改,因为它已经被服务器刷新了。每个请求都会创建一个新实例。无论如何都无法用 js 修改 c#,但反之亦然。如果您可以使用一些 js 在远程服务器上修改 C#,您能想象会是什么样子吗?用户可以通过更改属性来入侵您的身边。

于 2012-11-16T07:38:45.017 回答