使用javascript编程ASP.NET最有效、最健壮的方法是什么?

使用javascript编程ASP.NET最有效、最健壮的方法是什么?,javascript,asp.net,webforms,Javascript,Asp.net,Webforms,我想知道用JS编程ASP.NET的最佳方法是什么? 到目前为止,我一直在尝试使用Codebehind属性进行编码; 有没有更好更有效的方法将JS与ASP.NET结合使用 谢谢许多网络控件都有一个属性,该属性与您正在执行的操作相当。您也可以始终在标记中为没有该属性的控件设置该属性。许多网络控件都有一个属性,该属性与您正在执行的操作相当。此外,您也可以始终在标记中为没有该属性的控件设置该属性 在一个单独的js文件中编写所有函数比现在要灵活得多。问题可能是在js文件中获取控件ID。 有很多方法 硬编码

我想知道用JS编程ASP.NET的最佳方法是什么? 到目前为止,我一直在尝试使用Codebehind属性进行编码; 有没有更好更有效的方法将JS与ASP.NET结合使用


谢谢

许多网络控件都有一个属性,该属性与您正在执行的操作相当。您也可以始终在标记中为没有该属性的控件设置该属性。

许多网络控件都有一个属性,该属性与您正在执行的操作相当。此外,您也可以始终在标记中为没有该属性的控件设置该属性

在一个单独的js文件中编写所有函数比现在要灵活得多。问题可能是在js文件中获取控件ID。 有很多方法

硬编码

只需查看源代码并计算出要使用的控件的ID即可。 这很容易,但如果您可能希望在某个时间点更改控件的ID,则相应的功能将不起作用

类似这样的东西

在aspx文件中声明一个包含所有clientID的变量,并在js文件中使用它

var MyControlIDs = {"Textbox1":"<%= Textbox1.ClientID %>","Label1":"<%= Label1.ClentID %>"};
var MyControlIDs={“Textbox1”:“Label1”:“};
在js文件中
var mycontrol=window.MyControlIDs
你想用在哪里就用在哪里


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

在单独的js文件中编写所有函数比现在要灵活得多。问题可能是在js文件中获取控件ID。 有很多方法

硬编码

只需查看源代码并计算出要使用的控件的ID即可。 这很容易,但如果您可能希望在某个时间点更改控件的ID,则相应的功能将不起作用

类似这样的东西

在aspx文件中声明一个包含所有clientID的变量,并在js文件中使用它

var MyControlIDs = {"Textbox1":"<%= Textbox1.ClientID %>","Label1":"<%= Label1.ClentID %>"};
var MyControlIDs={“Textbox1”:“Label1”:“};
在js文件中
var mycontrol=window.MyControlIDs
你想用在哪里就用在哪里


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

谢谢。这是使用JS&ASP.NET的最佳方式吗?使用这种编程方法吗?还有,其他事件呢?比如onmousemove?@oshafran我记不起任何控件在.NET中有onmousemove属性。最简单的方法可能是使用标记来设置它。否则,您提到的方法是否定的rmal方法。还有更复杂的方法,包括创建自己的控件或重写渲染。谢谢。这是使用JS&ASP.NET的最佳方法吗?使用这种编程方法?还有,其他事件呢?比如onmousemove?@oshafran我记不起有任何控件在.NET中有onmousemove属性。最简单可能是使用标记来设置它。否则,您提到的方法是正常的方法。还有更复杂的方法,包括创建自己的控件或重写渲染。我认为在单独的js文件中编写函数比尝试从代码中编写所有javascript函数更高效、更灵活隐藏。但我如何才能做到这一点?我不知道我的控件的ID…(ctl100…)你能更具体一点吗?你是否编写自定义控件并需要它们向浏览器写入一些JS?@oshafran-关于ID,你可以通过在控件代码隐藏中使用
this.ClientID
来找到它。你也可以使用ClientMode=“Static”“如果您使用的是.Net 4.0,我认为在一个单独的js文件中编写函数要比从代码背后编写所有javascript函数更高效、更灵活。但我如何才能做到这一点?我不知道我的控件的ID。。。(ctl100…)你能更具体一点吗?您是否编写自定义控件并需要它们向浏览器写入一些JS?@oshafran-关于ID,您可以在后面的控件代码中使用
this.ClientID
来找到它。如果您在.Net 4.0中,也可以使用ClientMode=“Static”