Javascript asp.net c#multi-objet传递到Js代码文件
本文关键字:Js 代码 文件 asp net c#multi-objet Javascript | 更新日期: 2023-09-27 18:00:34
我在html页面上有代码,它正在工作:
document.getElementById('<%=IdOstan.ClientID %>').options.length = 0;
它是函数的一部分。找到对象并运行代码。但是,如果我将代码移动到一个单独的js文件,那么使用调用该文件
<script src="../../../../Script/AjaxCall.js" type="text/javascript"></script>
则找不到对象。我的结论是,通过调用document.getElementById可以在同一文件中找到Object,但对于传递给Js的对象,这是不正确的,而且看起来很正常。我试图在调用JS函数时传递对象,如下所示:
<asp:DropDownList ID="IdLand" runat="server" onchange="UpdateOstan(this);"
DataTextField="NameLand" DataValueField="IdLand" ViewStateMode="Enabled"
AutoPostBack="false">
</asp:DropDownList>
它也起作用。但我也需要传递第二个对象,我已经尝试过了:
onchange="UpdateOstan(this, IdsecondObj);"
也就是这个
onchange="UpdateOstan(this, document.getElementById('IdSecondObject'));"
不起作用。所以请让我知道如何将html对象传递给不在同一页面上的Javascript。我根本不想使用jQuery文件作为助手感谢
使用隐藏输入来存储IdOStan.ClientID的ID值,并从外部javascript获取ID名称的值,然后您就可以访问该对象。
<input id="MyHidden" value="<%=IdOstan.ClientID %>" />
在外部JS文件中。
var id = document.getElementById('MyHidden').value;
var IdOstan = document.getElementById(id);
现在IdOstan就是你要找的对象。