Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用JavaScript在一个转发器中点击一个按钮就显示TextAarea?_Javascript_C#_Jquery_Asp.net - Fatal编程技术网

如何使用JavaScript在一个转发器中点击一个按钮就显示TextAarea?

如何使用JavaScript在一个转发器中点击一个按钮就显示TextAarea?,javascript,c#,jquery,asp.net,Javascript,C#,Jquery,Asp.net,我正在尝试使中继器内的文本区域在单击按钮时显示(按钮也与文本区域一起位于同一中继器内) 函数ShowTextArea() { var rpt=document.getElementById(“”); var inputs=rpt.getElementsByTagName(“输入”); 对于(变量i=0;i

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

函数ShowTextArea()
{
var rpt=document.getElementById(“”);
var inputs=rpt.getElementsByTagName(“输入”);
对于(变量i=0;i
这是中继器:

<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>

如果要使用多个块,我会将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();
            }
        }
    }
或者您可以直接从
onClick
事件中引用
textarea

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


我确实尝试过你的建议,但没有一个奏效。我也试过这个:onClick=“ShowTextArea(“”);”但中继器似乎没有ClientId的定义。它给出的错误是:'System.Web.UI.WebControl.repeater'不包含'ClientId'的定义,并且找不到接受'System.Web.UI.WebControl.repeater'类型的第一个参数的扩展方法'ClientId'(是否缺少using指令或程序集引用?)
foreach(var currentRepeater in RepeaterCollection)
{
   // repeater block write code...
}
<asp:ImageButton ID="Imagsous" ImageUrl="..." onClick="$('txtcmt2').show();" />