2011-03-27 56 views
0

我想知道什么是用JS编程ASP.NET的最佳方法? 到目前为止,我一直在试图与代码隐藏的代码attributes.add(“点击”,......“); 有使用JS与ASP.NET更好更有效的方式什么是用JavaScript编程ASP.NET的最有效和最健壮的方式?

感谢?

+1

我认为在一个单独的js文件中编写函数比尝试从后面的代码编写所有JavaScript函数要高效灵活得多。 – 2011-03-27 13:26:42

+0

但是我怎么能做到这一点?我不知道我的控件的ID ...(ctl100 ....) – Himberjack 2011-03-27 13:27:09

+0

你可以请更具体吗?你写自定义控件,并需要他们写一些JS到浏览器? – 2011-03-27 13:27:40

回答

0

许多器WebControls有OnClientClick财产,这相当于你在做什么。您也可以随时将它设置在您的标记为不具备属性控制。

+0

谢谢。这是使用JS和ASP.NET的最佳方式吗?使用这种编程方法? – Himberjack 2011-03-27 13:23:51

+0

另外,其他事件呢?像onmousemove? – Himberjack 2011-03-27 13:24:56

+0

@oshafran我不记得任何在.NET中拥有onmousemove属性的控件。最简单的可能是使用标记来设置它。否则,你提到的方法是正常的方法。还有更复杂的方法,包括创建自己的控件或覆盖渲染。 – 2011-03-27 13:28:00

3

写作对你的功能在单独的js文件比你现在正在做的更加灵活,问题可能是在你的js文件中得到了控件的ID 好的方法有很多,

硬编码

只需查看源代码,并找出其中你想使用该控件的ID。 这是容易的,但如果你可能需要在某个时间点来改变控件的ID各自的功能将无法正常工作

像这样

声明一个变量,所有的的ClientID ASPX文件使用的JS文件

var MyControlIDs = {"Textbox1":"<%= Textbox1.ClientID %>","Label1":"<%= Label1.ClentID %>"}; 

,并在你的js文件var mycontrol= window.MyControlIDs 并使用它,无论你想

var textbox = document.getElementById(mycontrol.TextBox1);

相关问题