gpt4 book ai didi

asp.net - 如何使用 Javascript 获取调用它的 UserControl 的名称?

转载 作者:行者123 更新时间:2023-11-30 06:09:12 27 4
gpt4 key购买 nike

我试图在我的 aspnet c# 3.5 代码中尽可能用 javascript 客户端处理替换回发,以改善用户体验。我没有使用任何 javascript 框架。我正在使用 vs2008。

我有一个带有下拉列表和按钮的 usercontrol .ascx 文件,它在我的主屏幕上的三个位置使用。

我一直在为下拉列表在 OnSelectedIndexChanged 上进行回发。

虽然我不需要每次都回发,所以我尝试在用户控件中放入一个 javascript 函数来检查所选项目,并且只在它以“-”开头时才进行回发。

然而,我需要在我的 javascript 函数中 $get 的元素的名称取决于调用它的用户控件实例的名称,我需要在运行时获取该名称,例如:uc1_ ddlLocations 和 uc1_ btnPostBack。

代码如下:

<script type="text/javascript" language="javascript">
function ddlChange(this) {
var loc = $get("GetTheUserControlNameAndInsertHere_ddlLocations");
if (loc.value.substring(0,1)=='-' )
{
var btn = $get("GetTheUserControlNameAndInsertHere_btnPostBack ");
btn.click();
}
</script>

我该怎么做?有人可以建议更好的方法来做我想做的事情吗?

最佳答案

您可以通过从 ddl 名称中解析它来确定 UserControl 名称。请记住,我没有调试解析逻辑,它可能会稍微偏离 :)

<script type="text/javascript" language="javascript">
function ddlChange(ddl)
{

if (ddl.value.substring(0,1)=='-' )
{
var prefixEndLoc = ddl.id.lastIndexOf("_");
var prefix = ddl.id.subString(0,prefixEndLoc);
var btn = $get(prefix + "_btnPostBack ");
btn.click();
}
}
</script>

关于asp.net - 如何使用 Javascript 获取调用它的 UserControl 的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1273530/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com