2013-05-31 30 views
0

此存在的问题“用AJAX响应填充DropDownList并使用ASP.NET WebForms在服务器上获取选定值”在stackoverflow上接近答复我的问题,但不完全。我有一个从使用jquery和WebMethod调用的存储过程填充的下拉列表。检索客户端ddl.change()selecteditemtext并保存在vb.net字符串

在填充下拉列表之后,selectedindexchanged事件处理客户端并且工作得非常漂亮,返回表示日期范围的字符串(例如01/01/2013 - 03/31/2012)。我需要做的是捕获selecteditem文本并将字符串保存到vb中,以便我可以拆分它并将日期范围的值分别传递给vb.net函数。

如何获取已更改客户端的selecteditem文本并将其保存在vb.net字符串变量中?

accountingPeriodDDL.change(
       function (event) { 
        accountingPeriodSelection.val(accountingPeriodDDL.val()); 
        accountingPeriodText.val($("option:selected", accountingPeriodDDL).text()); 
       } 
       ); 

回答

0

您可以将值存储在隐藏字段中。存储在客户端隐藏字段中的值将在回发期间保留,因此您可以在服务器端VB.NET代码中读取该值。

+0

谢谢Yuriy。我需要检索此值并将其用于button_click事件。该值在客户端发生更改而没有回传。你是说如果我使用隐藏字段,那么当我到达按钮点击事件时,我可以从按钮点击事件的隐藏字段中获取所选下拉列表项目的文本值?我只是想确保我理解正确。 – user2441600

+0

是的,如果您修改隐藏字段的值,而不回发,并且稍后做回发(例如按钮点击),则服务器端代码将能够读取该值。 –

+0

无论何时更改选择,我都可以获取选定的项目文本。当页面初始加载时,此下拉列表由Ajax调用填充。在通过Ajax调用加载后,我需要访问下拉列表的选定项目文本。我试着检查隐藏字段的值,但它是空的,因为下拉列表没有加载到页面的Page_Load事件中。在填充下拉列表的Ajax调用之后检索初始选定值的任何建议?谢谢。 – user2441600