2013-06-25 39 views
1

我有一个文本框,我更改值取决于在我的DropDownList中选择什么。 目前为止这么好。获取文本框文本,JavaScript已更改

但是,当我想要获取该文本后面的代码时,它不会检索任何内容。 (我知道问题,而不是解决方案)

问题是,我怎样才能得到在JavaScript代码隐藏更新的文本? (我将在下面提交代码示例) (注:这不是我的代码,它只是一个简单的例子)

<asp:Panel ID="AnswerPanel" runat="server" > 
    <asp:TextBox ID="tbxExample" runat="server" ></asp:TextBox>     
</asp:Panel> 
<asp:Button ID="btnSend" onClientClick="Example" runat="server" Text="Send" /> 

的Jquery:

function Example{ 
    $('#tbxExample').val("Test"); 
} 

代码隐藏

string ex = tbxExample.Text; // I want it to say "Test", but it comes out as "" 
+0

是一个类型错误,你忘记了函数'Example'上的'()'? – Aristos

回答

2

您可以使用ASP.NET隐藏字段对此进行轻微的破解。可以创建用于存储隐藏字段一个JS变量,分配值,然后拉在服务器侧值:

与ID创建隐藏字段(在此示例中,ID是hiddenTest):

JS:

$hiddenField = $("#<%= hiddenTest.ClientID %>"); 
$('#<%=tbxExample.ClientID%>').blur(function() { 
    $hiddenField.val(this.value); 
}); 

您现在应该能够访问隐藏字段后面的代码,它应该有正确的值。

+0

这很方便!我想我现在就能得到它的工作! 谢谢! –

1

呈现的聊天室的id是不同于你使用的编码,你可以使用.ClientID作为:

$('#<%=tbxExample.ClientID%>').val("Test"); 
+0

我认为他需要的是从客户端到服务器的其他方式。 –

+1

@HanletEscaño是的,但要使它工作,使用jQuery从客户端更改值必须具有正确的文本框ID – Aristos

+0

耶,你是正确的我的坏。 –