Javascript 在.js文件中获取.aspx控件ID
大家好, (头部部分)Javascript 在.js文件中获取.aspx控件ID,javascript,asp.net,.net,Javascript,Asp.net,.net,大家好, (头部部分) 函数ChangeColor1(elementid) { document.getElementById(elementid).style.backgroundImage=“url('images/1.jpg')”; document.getElementById(“”.style.backgroundImage=“url('images/2.jpg')”; document.getElementById(“”.style.backgroundImage=“url'ima
函数ChangeColor1(elementid)
{
document.getElementById(elementid).style.backgroundImage=“url('images/1.jpg')”;
document.getElementById(“”.style.backgroundImage=“url('images/2.jpg')”;
document.getElementById(“”.style.backgroundImage=“url'images/2.jpg”);
document.getElementById(“”.style.backgroundImage=“url('images/2.jpg')”;
document.getElementById(“”.style.backgroundImage=“url('images/img1.JPG')”;
}
函数ChangeColor2(elementid)
{
document.getElementById(elementid).style.backgroundImage=“url('images/1.jpg')”;
document.getElementById(“”.style.backgroundImage=“url('images/2.jpg')”;
document.getElementById(“”.style.backgroundImage=“url('images/2.jpg')”;
document.getElementById(“”.style.backgroundImage=“url('images/2.jpg')”;
document.getElementById(“”.style.backgroundImage=“url('images/img2.JPG')”;
}
函数ChangeColor3(elementid)
{
document.getElementById(elementid).style.backgroundImage=“url('images/1.jpg')”;
document.getElementById(“”.style.backgroundImage=“url('images/2.jpg')”;
document.getElementById(“”.style.backgroundImage=“url('images/2.jpg')”;
document.getElementById(“”.style.backgroundImage=“url('images/2.jpg')”;
document.getElementById(“”.style.backgroundImage=“url('images/img3.JPG')”;
}
函数ChangeColor4(elementid)
{
document.getElementById(elementid).style.backgroundImage=“url('images/1.jpg')”;
document.getElementById(“”.style.backgroundImage=“url('images/2.jpg')”;
document.getElementById(“”.style.backgroundImage=“url('images/2.jpg')”;
document.getElementById(“”.style.backgroundImage=“url('images/2.jpg')”;
document.getElementById(“”.style.backgroundImage=“url('images/img4.JPG')”;
}
(身体部位)
此代码在.ASPX页面中运行良好 但是当我把这个脚本代码放在.js文件中,并在.ASPX页面的头部调用它时,这个.js文件工作得不好 td的ID=img2、ID=img3、ID=img4未传入.js文件
如何在.js文件中传递所有ID???问题是ASP.NET不会处理您的js文件并填写占位符 一种解决方案是强制ID保持静态,例如:
<td id="img4" runat="server" clientidmode="static" onmouseover="ChangeColor4(this.id)"
style="background-image: url('images/2.jpg')">
</td>
clientidmode=“static”
属性告诉ASP.NET不要损坏ID。这样,您甚至不需要在aspx页面上使用
。
<script>
var img1 = '<%= img1.ClientID%>';
var img2= '<%= img2.ClientID%>';
var img3= '<%= img3.ClientID%>';
var img4= '<%= img4.ClientID%>';
var imgchange= '<%= imgchange.ClientID%>';
</script>
试试这个,它将帮助您如果您正在使用母版页,它将不起作用,因为
ID
将被更改。您可以将一段Javascript
添加到.aspx
文件中,以声明包含元素id
的一些变量。或者,更简单地说,将类设置为元素并使用jQuery
选择它们。@adil是正确的。我认为你可以将变量设置为全局变量并在Js文件中访问它来解决这个问题,但是当OP最终有数百个单元格时,需要添加大量的Javascript
代码。发布问题的人。虽然我住在英国,但这并不能使我成为一名先生。英雄联盟
<td id="img4" runat="server" clientidmode="static" onmouseover="ChangeColor4(this.id)"
style="background-image: url('images/2.jpg')">
</td>
<script>
var img1 = '<%= img1.ClientID%>';
var img2= '<%= img2.ClientID%>';
var img3= '<%= img3.ClientID%>';
var img4= '<%= img4.ClientID%>';
var imgchange= '<%= imgchange.ClientID%>';
</script>
function ChangeColor1(elementid) {
document.getElementById(img1).style.backgroundImage = "url('images/1.jpg')";
document.getElementById(img2).style.backgroundImage = "url('images/2.jpg')";
document.getElementById(img3).style.backgroundImage = "url('images/2.jpg')";
document.getElementById(img4).style.backgroundImage = "url('images/2.jpg')";
}