两个ASP.NET Postback相关问题

时间:2009-05-20 17:46:10

标签: asp.net javascript

问题1) 我有一个控件,我通过使用如下句子从服务器端添加属性:

ControlName.Attributes.Add("myTestAttribute", "")

从客户端我使用Javascript函数修改此属性的值:

Document.getElementById(ControlName).setAttribute("myTestAttribute", “Hello Server!!”);

我的问题是,当我尝试访问Postback处理函数的属性值时,该属性为空。 我错过了一些步骤吗?

问题2) 是否可以从Postback处理函数内部获取服务器端页面的完整HTML代码?

3 个答案:

答案 0 :(得分:1)

如果javascript修改页面上的elemants,它们将不会对服务器可见。发生回发时,服务器可用的唯一数据是页面上表单中发送的数据。

ASP.net通过将其值放入名为viewstate的隐藏字段来处理标准表单元素(如文本框,下拉列表等)(这通常是编码的,因此无法直接读取)。

如果您希望javascript修改的页面元素对服务器可见,您可以编写新的隐藏表单元素并从Request [string name]数组中检索它们。

答案 1 :(得分:0)

在回答问题2时,如果您想在回发后知道其值,可以在视图状态中保留这些属性的状态。

答案 2 :(得分:0)

  1. 将该属性添加到Page_Init
  2. 都能跟得上