gpt4 book ai didi

javascript - 如何使用 JavaScript 使 Repeater 内的 TextArea 在单击按钮时显示?

转载 作者:行者123 更新时间:2023-11-27 23:01:07 25 4
gpt4 key购买 nike

我试图让中继器内的文本区域在单击按钮时显示(该按钮也与文本区域一起位于同一个中继器内)

function ShowTextArea()
{
var rpt = document.getElementById("<%= Repeater1.ClientID%>");
var inputs = rpt.getElementsByTagName("input");
for (var i = 0; i < inputs.length; i++)
{
if (inputs[i].click())
{
$("#txtcmt2").show();
}
}
}

这是中继器:

<asp:Repeater ID="Repeater1" runat="server" DataSourceID="comment" OnItemDataBound="Repeater1_ItemDataBound" OnItemCreated="Repeater1_ItemCreated">
<ItemTemplate>
<asp:ImageButton ID="ImageButton1" ImageUrl="Icons/profile-user.png" CssClass="btn btn-default" runat="server" /><label><%#Eval("FullName") %></label>
<div runat="server" class="form-control">
<%#Eval("Commentaire") %>
</div>
<asp:HiddenField ID="HiddenField1" runat="server" Value=' <%# Eval("CodeCommentaire") %> ' />
<asp:ImageButton ID="spambtn" CssClass="btn btn-default" ImageUrl="Icons/warning.png" runat="server" />
<input id="rplybtn" Class="btn btn-info" type="button" onclick="ShowTextArea();" value="Reply" />
<textarea id="txtcmt2" cols="50" rows="4" class="form-control" style="visibility:hidden" runat="server"></textarea>
<asp:Repeater ID="Repeater2" runat="server">
<ItemTemplate>
<asp:ImageButton ID="Imagsous" ImageUrl="Icons/profile-user.png" CssClass="btn btn-default" runat="server" /><label><%#Eval("FullName") %></label>
<div id="souscmt" ><%#Eval("Commentaire_sous") %></div>
</ItemTemplate>
</asp:Repeater>
</ItemTemplate>
</asp:Repeater>

最佳答案

如果你打算有多个这样的 block ,我会将 javascript 更改为:

function ShowTextArea(clientId)
{
var rpt = document.getElementById(clientId);
var inputs = rpt.getElementsByTagName("input");
for (var i = 0; i < inputs.length; i++)
{
if (inputs[i].click())
{
$("#txtcmt2").show();
}
}
}

然后在 <asp:ImageButton />标签,添加 onClick="ShowTextArea('<%= Repeater1.ClientId %>');" 。您可能想要更改 Rpeater1使用您在循环中使用的任何变量,即 currentRepeater如果你正在做类似的事情:

foreach(var currentRepeater in RepeaterCollection)
{
// repeater block write code...
}

或者您可以引用textarea直接来自onClick事件:

<asp:ImageButton ID="Imagsous" ImageUrl="..." onClick="$('txtcmt2').show();" />

关于javascript - 如何使用 JavaScript 使 Repeater 内的 TextArea 在单击按钮时显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37094427/

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