如何从javascript访问服务器上运行的HTML控件

如何从javascript访问服务器上运行的HTML控件,javascript,asp.net,jquery,Javascript,Asp.net,Jquery,我有以下代码: <telerik:GridTemplateColumn DataField="JOB_CODE" <EditItemTemplate> <input type="text" ID="JOB_CODETextBox" runat="server" value='<%# Eval("JOB_CODE") %>' readonly="readonly" onclick="$('#basic-modal-content').modal({

我有以下代码:

<telerik:GridTemplateColumn DataField="JOB_CODE" 
<EditItemTemplate> 
<input type="text" ID="JOB_CODETextBox" runat="server" 
 value='<%# Eval("JOB_CODE") %>' readonly="readonly" 
 onclick="$('#basic-modal-content').modal({
                                          appendTo:'form', persist: true,
                                          onClose: function (dialog) 
                                                   {
                                                      /*
           I want to assign here a value to the textbox control
           like this: JOB_CODETextBox = 'something...'
           I tried this: 
           $find('<%= JOB_CODETextBox.ClientID %>').value = 'something..'
           but it didn't work!! the find function returns [null]
                                                      */
                                                      $.modal.close();
                                                   }
                                         } );" />

任何帮助

这应该有效:

$('#'+'<%= JOB_CODETextBox.ClientID %>').val('something');
$('#'+'').val('something');
或(仅限C):

$('').val('something');
或者使用JavaScript/ECMAScript:

document.getElementById('<%= JOB_CODETextBox.ClientID %>').value = 'something';
document.getElementById(“”).value='something';

我不熟悉您使用的telerik控件,因此我假设它与其他数据绑定控件类似。考虑到这一点,下面是一个使用
中继器
控件的示例

这是标记

  <asp:Repeater ID="rpt1" runat="server">
    <ItemTemplate>
      <input type="text" id="JOB_CODETextBox" runat="server" />
    </ItemTemplate>
  </asp:Repeater>

感谢您的重播,但是绑定()不起作用,它仍然在javascript中给我相同的值,它没有用实际的客户端id替换它,任何想法!!
telerik:GridTemplateColumn
是另一个控件的一部分吗?呈现的html是什么样子的?
  <asp:Repeater ID="rpt1" runat="server">
    <ItemTemplate>
      <input type="text" id="JOB_CODETextBox" runat="server" />
    </ItemTemplate>
  </asp:Repeater>
System.Text.StringBuilder js = new StringBuilder();

js.AppendLine("  <script>");

// we'll store all the control references in a list 
// since there will be one for each item in the repeater
js.AppendLine("    var JOB_CODETextBox_list = [];"); 

for (int j = 0; j < this.rpt1.Items.Count; j++)
{
    System.Web.UI.HtmlControls.HtmlGenericControl JOB_CODETextBox;

    // try to locate the copy of the control local to each item
    JOB_CODETextBox = (HtmlGenericControl)this.rpt1.Items[j].FindControl("JOB_CODETextBox");

    if (JOB_CODETextBox != null) // make sure you found something
    {
        js.AppendFormat("JOB_CODETextBox_list.push(document.getElementById('{0}'));", JOB_CODETextBox.ClientID);
        js.AppendLine();
    }
}
js.AppendLine("  </script>");

this.Page.ClientScript.RegisterStartupScript(typeof(Page), "JOB_CODE", js.ToString(), false);
    JOB_CODETextBox_list[n].value = 'something';