使用jQuery将文本添加到asp.net文本框控件

在Web表单中,我有一些输入字段

Label 1
Label 2

由于焦点在控件上丢失,因此输入的值需要返回到asp.net文本框控件。 我已经能够使用以下代码将值传递给div层或标准html元素:

  function fieldUpdate() { var currentValue = $(this).val(); var field = $(this).attr("name"); if (currentValue != "") { $("#results").append(field + ":" + currentValue + "+"); } } $(function () { $("#search1 :input[type=text]").focusout(fieldUpdate); }); 

但是这似乎不适用于asp.net服务器端控件。 更新此问题的目的是将输入到标准html输入字段的值配置到asp:textbox控件中

  

更新下面是当前解决方案如何工作的屏幕截图。 在顶部,您会看到输入字段,当用户输入值并从每个字段中选项卡时,此值将添加到标记为结果的Div图层中。 我想要做的不是将字段名和值添加到我希望它们添加到asp:textbox控件的DIV元素中。

在此处输入图像描述

最好将此代码存储在外部js文件中,而不是存储在aspx页面中。

任何人都可以提供有关如何完成此任务的任何建议

提前致谢

更新解决方案感谢James帮我解决这个问题。 下面是当前实现中使用的jQuery代码。

 function fieldUpdate() { var currentValue = $(this).val(); var field = $(this).attr("name"); var txt = $("#"); if (currentValue != "") { $("#results").append(field + ":" + currentValue + "+"); if (txt) { txt.val(txt.val() + field + ":" + $(this).val() + "+"); } } } $(function () { //only evaluate input text field $("#search1 :input[type=text]").focusout(fieldUpdate); 

现在,这将允许使用输入字段名称和值填充asp:文本框。 示例Field1:foo + Field2:somevalue2 + Field3:somevalue3 …

那些不是ASP.NET TextBox控件; 它们是HTML文本输入。 要回答你的问题,你会这样做:

   

我注意到您在示例中设置了名称而不是ID。 如果您有选择,我会使用ID,但您可以按名称找到一个元素,如下所示:

 $("input[name='Field1']").val("Hello world"); 

如果您使用实际的ASP.NET TextBox控件,解决方案将有所不同:

   

如果要获取search1 div中的所有文本输入,可以执行以下操作:

 $(".forminput input[type='text']").val("Hello world!"); 

这是上面例子的jsFiddle: http : //jsfiddle.net/DWYTR/

编辑

根据您的评论,以下是在blur将值从一个输入复制到另一个输入的方法:

 $(".forminput input[type='text']").blur(function(){ var txt = $("#<%=TextBox1.ClientID%>"); if (txt){ txt.val(txt.val() + $(this).val()); } });