Javascript与Asp.net runat=server属性冲突

Javascript与Asp.net runat=server属性冲突,javascript,asp.net,html,runatserver,Javascript,Asp.net,Html,Runatserver,我正在运行一些带有几个html控件的java脚本。一切正常 除非我向html控件添加runat=“server”属性,以便在代码隐藏中访问它,否则java脚本函数不起作用。这是一件平常的事吗?在java脚本中使用runat=“server”属性是否有变通方法 或者,如何在不使用runat server属性的情况下访问代码隐藏中的Html控件 困惑。好的,runat=“server”正常 您需要修改javascript 如果控件输入为: <input id="control_ID" runa

我正在运行一些带有几个html控件的java脚本。一切正常

除非我向html控件添加runat=“server”属性,以便在代码隐藏中访问它,否则java脚本函数不起作用。这是一件平常的事吗?在java脚本中使用runat=“server”属性是否有变通方法

或者,如何在不使用runat server属性的情况下访问代码隐藏中的Html控件

困惑。

好的,runat=“server”正常

您需要修改javascript

如果控件输入为:

<input id="control_ID" runat="server" />

在javascript中使用以引用控件


它会很好用的。但是,如果这不起作用,请共享您的代码。我会解决的

这很可能发生,因为您的标记看起来像这样:

<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <div runat="server" id="myDiv">
    </div>
</asp:Content>
<div>
    <div id="ContentPlaceHolder1_myDiv">
    </div>
</div>
如果您使用的是asp.net 4,您可以通过添加
clientidmode=“Static”
来更改
myDiv的标记,然后您将获得:

<div>
    <div id="myDiv">
    </div>
</div>

这意味着您的javascript将再次工作。如果您使用的是早期版本的asp.net,那么您需要按照SHAKKIR SHABBIR的建议,使用
引用javascript中的元素,以便获得asp.net生成的ID的“重命名”版本。

,'mm/dd/yyyy');" 
<img alt="Calendar" onmouseover="javascript:this.style.cursor='hand';"
                    src="~/images/Calander_0.png" 
                    id="ImgCalender"  
                    onclick ="javascript:showCalendarControl('<%=txtAppointmentDate.ClientID  %>','mm/dd/yyyy');" 
                    runat="server"  />
runat=“服务器”/>

如果设置了run at server(在服务器上运行),则JavaScript不起作用

请复制/粘贴有问题的代码Hi EB。您正在概括您的问题。相反,您需要具体说明您试图通过codebehind访问的控件,否则此线程将变成一个包含20个问题的游戏。我们确实需要查看您的代码以帮助您解决问题这一个。也就是说,我怀疑当你添加
runat=“server“
对于HTML控件,控件的ID被更改为类似于
ctl00\u OriginalIdHere
的内容,这会导致javascript中断。你用的是什么版本的asp.net?Rob,这对我来说是个好消息。我不知道clientmode=Static。。。。谢谢你的补充信息!好啊谢谢夏奇尔和罗布。我尝试了两种解决方案,罗布成功了!我也不知道这个属性。夏奇尔,我相信你的建议也行,我一定是做错了什么。谢谢你们两位。最后一个问题,我有一个HTML按钮submit,它调用javascript函数“initialize”。有没有办法在页面加载事件中调用此按钮单击事件或javascript函数?谢谢大家!这是一个完全不同的问题,所以,问一个新问题=)很高兴我帮了忙:)