如何从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';