以编程方式更改下拉列表值时调用javascript
我有一个下拉列表,有n个项目,在选择一个特定项目时,我会使tr可见。这是我通过JavaScript完成的。每当用户更改下拉列表值时,就会触发下拉列表的JavaScript on change事件。直到这里都很好 问题: 当我从我的c#代码中设置下拉列表的值时,JavaScript事件没有被触发,因此tr不可见。我如何解决这个问题 救命啊 编辑1:以编程方式更改下拉列表值时调用javascript,javascript,c#,Javascript,C#,我有一个下拉列表,有n个项目,在选择一个特定项目时,我会使tr可见。这是我通过JavaScript完成的。每当用户更改下拉列表值时,就会触发下拉列表的JavaScript on change事件。直到这里都很好 问题: 当我从我的c#代码中设置下拉列表的值时,JavaScript事件没有被触发,因此tr不可见。我如何解决这个问题 救命啊 编辑1: 我在页面加载中完成了dis。当用户更改值时调用javascript。但是,当我设置下拉列表的值(在页面加载时)时,不会调用javascript。我尝试
我在页面加载中完成了dis。当用户更改值时调用javascript。但是,当我设置下拉列表的值(在页面加载时)时,不会调用javascript。我尝试使用RegisterClient脚本,但效果不太好。您可以使用下面的代码调用javascript函数
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "key", "yourfunctionhere();", true);
通过在JQuery中包含以下行,我解决了上述问题:
$(document).ready(function () {
$("#<%=ctrl1.ClientID %>").change(function () {
//debugger;
if ($(this).val() != 0 && $(this).val() != 99) {
$(this).parent().closest('td').next().css("display", "table-cell");
$(this).parent().closest('td').next().next().css("display", "table-cell");
}
else {
$(this).parent().closest('td').next().css("display", "none");
$(this).parent().closest('td').next().next().css("display", "none");
}
}
);
$("#<%=ctrl1.ClientID %>").trigger('change');
}
);
$(文档).ready(函数(){
$(“#”)更改(函数(){
//调试器;
如果($(this.val()!=0&$(this.val()!=99){
$(this).parent().closest('td').next().css(“显示”、“表格单元格”);
$(this).parent().closest('td').next().next().css(“显示”、“表格单元格”);
}
否则{
$(this).parent().closest('td').next().css(“display”,“none”);
$(this).parent().closest('td').next().next().css(“display”,“none”);
}
}
);
$(“#”)触发器('change');
}
);
无论如何,感谢您的帮助。您正在使用网站?由于我正在设置页面加载的值,我无法调用Javascript,该Javascript以两个控件作为参数,并且由于页面未完全加载,这些参数将变为null。
$(document).ready(function () {
$("#<%=ctrl1.ClientID %>").change(function () {
//debugger;
if ($(this).val() != 0 && $(this).val() != 99) {
$(this).parent().closest('td').next().css("display", "table-cell");
$(this).parent().closest('td').next().next().css("display", "table-cell");
}
else {
$(this).parent().closest('td').next().css("display", "none");
$(this).parent().closest('td').next().next().css("display", "none");
}
}
);
$("#<%=ctrl1.ClientID %>").trigger('change');
}
);