我已经编写了javascript代码,但它没有被调用。我试图调用表单html方面,也通过从页面加载事件中分配属性,但它根本没有被调用。
这是我的javascript的代码。
function rdbantiplatelet_onClick(thiscontrol, trName) {
alert('hi');
var RB1 = thiscontrol;
var radio = RB1.getElementsByTagName("input");
var trDose = document.getElementById(trName.toString());
// var RB1 = document.getElementById("<%=this.rdbantiplatelet.ClientID%>");
// var radio = RB1.getElementsByTagName("input");
// var tblAntiplatelet = document.getElementById("<%=tblAntiplatelet.ClientID %>");
for (var i = 0; i < radio.length; i++){
if (radio[i].checked){
trDose.style.display = "";
return true;
}
else{
trDose.style.display = "none";
return true;
}
}
return false;
}
这是调用在page_load事件中编写的javascript的代码。
rdbantiplatelet.Attributes.Add("OnClick", "return rdbantiplatelet_onClick(this,'" + trDose.ClientID.ToString() + "');");
答案 0 :(得分:1)
首先尝试alert()
确保onclick
被解雇,然后尝试rdbantiplatelet_onClick()
功能:
rdbantiplatelet.Attributes.Add("OnClick", "alert('I am working');");
答案 1 :(得分:0)
首先,这里提供一个标准html事件列表
http://www.w3schools.com/tags/ref_eventattributes.asp
尝试将这样的内容添加到html radiobutton元素
onchange =“alert('on change fired');”
和
onclick =“alert('on click fired');
所以你可以确保你正在开展正确的活动。
获得正确的事件后,将警报调用替换为您的方法
这将是这样的
onchange =“rdbantiplatelet_onClick(this,this.parent.id)”
...您可能需要更改'this.parent.id'
确保您正在使用一个良好的Web浏览器进行开发FireFox与firebug插件非常适合这些东西。
答案 2 :(得分:0)
您将click事件添加到包含radiobuttons的html表中。使用下面的脚本:
foreach (ListItem item in rdbantiplatelet.Items)
{
item.Attributes.Add("onclick", "return foobar(this);");
}