背景我的页面基于SQL数据库的行创建对象列表。对于每个对象,动态生成一个DIV,其中包含一些项目,包括LinkButton和最初隐藏的另一个子DIV。我想要链接按钮来切换子DIV的隐藏属性。 JavaScript不是动态生成的,并且包含在ASPX页面中。在ClickClick上添加JavaScript到动态生成的asp按钮
问题我不知道如何使这个生成的LinkButton fire JavaScript包含在ASPX页面中并传入正确的DIV ID。
我猜我需要一个属性添加到该按钮,像这样:
myButton.Attributes.Add(reference to JS function + parameter of DIV's ID)
也许就像:
myButton.Attributes.Add("onclick", "Show_Hide_Display('"<%="' +idString+ '".ClientID%>"')");
当按钮被赋予了JS的onClick处理程序指向的属性到函数“Show_Hide_Display”和作为渲染ID计算的DIV's ID的参数。这个语法虽然不正确。
我该如何编写它,以便它调用“Show_Hide_Display”并传递当前子DIV的ID?所有的DIV具有相同的ID除了一些我想添加一个调用按钮引用它们的行号,例如“‘myDiv_’+ counter.ToString”
中的JavaScript:
function Show_Hide_Display(divID) {
var div = document.getElementById(divID);
var style = document.defaultView.getComputedStyle(div);
var display = style.getPropertyValue('display');
if (display == '' || display == 'block') {
div.style.display = 'none';
} else {
div.style.display = 'block';
}
}
这实际上是我最终采用的路线。但是,将你的答案标记为未来有类似问题的人的答案。谢谢。 – Ryan