asp.net Repeater 隐藏
昨天刚开始接触Repeater控件 还不是很熟.现在想实现以个功能 就是以个回复的隐藏显示功能
主要代码如下:
<script type="text/javascript">
//注册时隐藏登陆界面,显示注册界面
function ShowLogon() {
var divLogin = document.getElementById("Reply");
var divLogon = document.getElementById("insert");
var divbutton = document.getElementById("Button3");
var divlabel = document.getElementById("Button4");
if (divbutton.name == divlabel.value) {
divLogin.style.display = "none";
divLogon.style.display = "block";
}
}
//注册完毕时隐藏注册界面,显示登陆界面
function ShowLogin() {
var divLogin = document.getElementById("Reply");
var divLogon = document.getElementById("insert");
var divbutton = document.getElementById("Button3");
var divlabel = document.getElementById("Button4");
if (divbutton.name == divlabel.value) {
divLogin.style.display = "block";
divLogon.style.display = "none";
}
}
</script>
<div style=" width:710px">
<asp:Repeater ID="Repeater1" runat="server">
<HeaderTemplate>
<div><asp:Label ID="Label1" runat="server" Text="发件人" /></div>
</HeaderTemplate>
<ItemTemplate>
<div>
<div style=" height:20px;" >
<a><%# DataBinder.Eval(Container.DataItem, "U_ID_From")%></a>
<%--<asp:Label ID="Label1" runat="server" nodename Text='<%# Eval("ID") %>' Visible="false"></asp:Label>--%>
<input id="Button4" type="button" value='<%# Eval("ID") %>' visible="false" />
</div>
<div style=" height:20px;">
<a><%# DataBinder.Eval(Container.DataItem, "Msg_Title")%></a>
</div>
<div style=" height:20px;">
<a><%# DataBinder.Eval(Container.DataItem, "Msg_Content")%></a>
</div>
<div id="insert" style=" height:30px;">
<input id="Button3" type="button" value="回复" name='<%# Eval("ID") %>' onclick="ShowLogin()"/>
</div>
<div id="Reply" style="display:none">
<div>
<asp:TextBox ID="TextBox1" runat="server" TextMode="MultiLine" Width="479px"></asp:TextBox>
</div>
<div>
<asp:Button ID="Button1" runat="server" Text="提交" /><input id="Button2" type="button" onclick="ShowLogon()"
value="取消" />
</div>
</div>
</div>
</ItemTemplate>
</asp:Repeater>
</div>
当我点击回复的时候 回复Button被隐藏 id为Reply的div被显示出来 当我点击取消的时候 id为Reply的div被隐藏 回复Button显示出来。
现在的问题在于Repeater由多条数据组成时 我以上的代码使我无论点哪条数据的回复都会将第一条数据的回复button隐藏并且第一条数据的id为Reply的div被显示出来,
我另外放置了一个button4来获取数据的自动增长列(数据库字段)可是不会跟我的js代码关联起来
追问:是啊 我的<input id="Button4" type="button" value='<%# Eval("ID") %>' visible="false" /><input id="Button3" type="button" value="回复" name='<%# Eval("ID") %>' onclick="ShowLogin()"/>
都绑定了ID的 然后我的var divbutton = document.getElementById("Button3");
var divlabel = document.getElementById("Button4");
if (divbutton.name == divlabel.value) {
divLogin.style.display = "none";
divLogon.style.display = "block";
}我想判断按钮的name值跟另外的一个value是否相同 如果相同就进行隐藏
但是现在的问题是我用IE8运行了 if条件是可以通过的 但是隐藏的没有条件 所以每次都是隐藏第一条数据了 我是怎么在隐藏这里添加判断到底是哪条数据呢