2013-03-28 82 views
1

我有一个带有下拉列表和一些ASP.NET文本框/标签的ASP.NET web应用程序。当用户从下拉列表中选择一个特定的项目时,标签会改变文本,其中一些使用jquery隐藏。然而,在点击一个按钮之后,控件正在被改回,就像页面首次加载时一样。保存按钮点击后的asp.net控件的UI状态

请建议

  1. 我怎么能保存新的标签名称等?
  2. 我应该把同样的jQuery代码写在dropdownlist on change事件上,也是在文档加载事件上?
  3. 我应该使用隐藏的字段来存储值吗?

回答

0

1:我如何保存新的标签名称等?

是,

您可以使用隐藏字段来存储。

2:我是否应该将相同的jquery代码放在更改事件上的dropdownlist中,同样也是在文档加载事件中编写的?

没有,

在Page_Load中访问隐藏字段,提取物和使用价值。

3:我应该使用隐藏的字段来存储值?

是,

您可以使用隐藏字段来存储你的GUI控制使用jQuery所做的更改。通过使其运行服务器来访问该隐藏域服务器。在服务器端,当您回发访问隐藏字段时,提取并分配相应控件的值。您可以看到它在post中的工作方式。

0

正如你可能知道的那样,点击按钮后,如果它是提交类型,它将执行回发到服务器,因为HTTP是无状态的,它是你负责再次生成标签文本和值。一般来说,ASP.NET viewstate会为输入文本处理,但对于您必须自己执行的标签。我可以建议这样

1的溶液)具有将不得不改变标签和隐藏字段的基础上的下拉

 function MyFunction (ddlSelectedValue) 
    { 
     if(ddlSelectedValue == "1") 
     { 
      $("#LABELID").html('YOUR VALUE'); 
      // rest other logics 
     } 
    } 

2)ASP的选择的值的值的逻辑一个JavaScript方法。点击按钮后,NET viewstate将帮助你保持下拉状态。因此,在页面顶部添加这个jQuery脚本

 $(document).ready(function(){ 
     var ddlSelectedValue = $("#DDLID").val(); 
     MyFunction(ddlSelectedValue); 

     }); 

3)将点1方法附加到下拉菜单的变化上。

4)使用隐藏字段是好的,因为隐藏字段将满足您在服务器端的使用要求,因为它们也将被重新发布。