Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.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
C# 如何将行附加到gridview而不是完全刷新_C#_Javascript_Jquery_Asp.net_Visual Studio 2010 - Fatal编程技术网

C# 如何将行附加到gridview而不是完全刷新

C# 如何将行附加到gridview而不是完全刷新,c#,javascript,jquery,asp.net,visual-studio-2010,C#,Javascript,Jquery,Asp.net,Visual Studio 2010,我有一个下拉列表。在更改dropdownlist的索引时,我在asp.net gridview中填充了一行 我不想刷新整个gridview,而是希望在下拉列表值发生更改时,使用新行附加gridview 有人知道怎么做吗?我的代码如下: aspx: <table> <tr> <td> <div> <asp:Label ID="lblC

我有一个下拉列表。在更改dropdownlist的索引时,我在asp.net gridview中填充了一行

我不想刷新整个gridview,而是希望在下拉列表值发生更改时,使用新行附加gridview

有人知道怎么做吗?我的代码如下:

aspx:

<table>
        <tr>
            <td>
                <div>
                    <asp:Label ID="lblClient" runat="server" Text="Client :" CssClass="label" ForeColor="Black"></asp:Label>
                    <asp:DropDownList ID="ddlClient" runat="server" AppendDataBoundItems="true" AutoPostBack="true" OnSelectedIndexChanged="ddlClient_SelectedIndexChanged">
                        <asp:ListItem Text="ALL" Value="0"></asp:ListItem>
                    </asp:DropDownList>
                </div>
            </td>
        </tr>
        <tr>
        <td>
        <asp:GridView ID="gvMainLog" runat="server" Visible="true" AllowSorting="True" AutoGenerateColumns="False"AllowPaging="true">
                    <Columns>
                    <asp:TemplateField ShowHeader="False">
                        <ItemTemplate>
                                   <div id='<%# "myRow" + Container.DataItemIndex %>'> 
                                   <asp:Literal ID="ltId" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "Instruction")%>'></asp:Literal>
                                 <img src="../Images/KnobRed.png" onclick='<%# "deleteRow(\"myRow" + Container.DataItemIndex+"\")" %>'/> </div>
                        </ItemTemplate>
                    </asp:TemplateField>
                    </Columns>
                    </asp:GridView>
        </td>
        </tr>
    </table>
javascript

<script type="text/javascript">
    function deleteRow(rowId) {
    $("#" + rowId).remove();
}
</script>

函数deleteRow(rowId){
$(“#”+rowId).remove();
}

这可能需要注释,但我想显示一行代码

Container.DataItemIndex
应替换为
,并且需要输出函数deleteRow

你的onclick应该是这样的

onclick="deleteRow(myRow + <%#DataBinder.Eval(Container, "DataItemIndex")%>"
onclick=“删除行(myRow+”

在javascript中试试这个

<script type="text/javascript">
    function deleteRow(rowId) {
    $("#" + rowId).remove();
}
</script>
//添加新行

function AddNewRecord()
        {
            var grd = document.getElementById('GridView1');
            var tbod=grd.rows[0].parentNode;
            var newRow=grd.rows[grd.rows.length - 1].cloneNode(true);
            tbod.appendChild(newRow);
            return false;

        }
//删除旧行

function delrow(rowindex)

{

var gridID=document.getElementById("<%=grid.ClientID %>");

gridID.deleteRow(rowindex+1);     

return false;

}
函数delrow(行索引)
{
var gridID=document.getElementById(“”);
gridID.deleteRow(rowindex+1);
返回false;
}

您已设置为使用服务器端事件,但需要客户端更新吗?我只想使用服务器端事件。例如:在更改dropdownlist上的项目时,我想从数据库中提取一行,并将该行附加到当前的gridview中。您能告诉我deleteRow的含义是什么吗?@SqlSamurai it n如上所述,需要退出“”。在您的代码中,您已经在onclick='嘿,谢谢!我在问题中发布的当前代码运行得非常好。我想知道如何将另一行附加到gridview,而不是对页面进行完全刷新。