c# – ASP.NET用户控件中的Javascript函数
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – ASP.NET用户控件中的Javascript函数,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1842字,纯文字阅读大概需要3分钟。
内容图文
![c# – ASP.NET用户控件中的Javascript函数](/upload/InfoBanner/zyjiaocheng/708/966cff7c84f04391aed28f004c4940b2.jpg)
我用javascript函数创建了ASP.NET用户控件:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="TestControl.ascx.cs" Inherits="BingTranslator.Web.WebUserControl1" %>
<script type="text/javascript">
function example() {
alert('<%=ExampleButton.ClientID%>');
return false;
}
</script>
<asp:Button ID="ExampleButton" runat="server" Text="Example"/>
当用户将鼠标移动到按钮时,我想调用“example”函数,所以我为按钮添加了属性:
ExampleButton.Attributes.Add("onmouseover", "example()");
它运作良好,但当我在同一页面上需要两个控件时,我遇到了问题. ASP.NET生成具有两个具有相同名称的函数的代码,这是错误的:
<script type="text/javascript">
function example() {
alert('TestControl1_ExampleButton');
return false;
}
</script>
<input type="submit" name="TestControl1$ExampleButton" value="Example" id="TestControl1_ExampleButton" onm ouseover="example()" />
<script type="text/javascript">
function example() {
alert('TestControl2_ExampleButton');
return false;
}
</script>
<input type="submit" name="TestControl2$ExampleButton" value="Example" id="TestControl2_ExampleButton" onm ouseover="example()" />
并且任何按钮上的onmouseover事件总是会调用第二个函数.我可以通过将带有客户端ID的java脚本代码直接添加到attriburte onm ouseover来解决此问题.
ExampleButton.Attributes.Add("onmouseover", "[Here will be javascript code]");
但对我来说这不是一个非常和谐的解决方案.请告知,我如何才能更好地解决此类问题.
附:将会有更多的Javascript代码,例如我添加了两个字符串upper.
解决方法:
您需要使用ClientScriptManager注册脚本 – 这样,无论控件添加到页面的频率如何,都可以注册一次:
// Get a ClientScriptManager reference from the Page class.
ClientScriptManager cs = Page.ClientScript;
// Check to see if the startup script is already registered.
if (!cs.IsStartupScriptRegistered(cstype, csname1))
{
String cstext1 = "alert('Hello World');";
cs.RegisterStartupScript(cstype, csname1, cstext1, true);
}
内容总结
以上是互联网集市为您收集整理的c# – ASP.NET用户控件中的Javascript函数全部内容,希望文章能够帮你解决c# – ASP.NET用户控件中的Javascript函数所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。