更改文本框值应更新隐藏字段

时间:2011-04-20 11:11:19

标签: asp.net

我有一个隐藏字段,我想在每次更改文本框值时更新。当文本框值更改隐藏字段时,我是否正在更改服务器端或客户端的值并不重要。我使用了文本框的onchange事件,但它不起作用,因为我正在以编程方式更改文本框的值。我怎么能这样做?

2 个答案:

答案 0 :(得分:2)

您需要单独进行。

在后面的代码中,您需要添加TextBox_TextChanged事件

HiddenField.Value = TextBox.Text

在客户端,您需要添加像onchange="javascript:updateHiddenField();"这样的onchange事件,然后执行以下操作:

function updateHiddenField() {
  document.getElementById('HiddenFieldClientID').value = document.getElementById('TextBoxClientID').value  
}

请注意,如果您使用MasterPages或数据绑定控件(如转发器/网格视图等),则ClientID将与ID不同。

答案 1 :(得分:0)

如此定义的隐藏字段:

<input type="hidden" id="BillMeFormReferred" name="referred" />

需要提取由不同表单包含的文本框的值 - 也就是说,隐藏字段位于正在提交的表单上 - 文本框以不同的形式_not_being_submitted。

jQuery能够通过编码的按钮完成此任务:

<input type="button" value="Bill Me" id="BillMe"
  onclick="$('#BillMeFormReferred').val(   // the setter form of .val
                   $('#tbReferred').val() //  references the remote field ID
                   ); $('#BillMeForm').submit();" />