2012-03-25 66 views
3

我有一個gridview,其中有一個添加和刪除行設施。我想知道如何刪除特定的gridview行時單擊相應的刪除按鈕。使用Javascript刪除GridviewRow?

我到處找,但沒有找到非常有用到我

繼承人我的代碼

<asp:TemplateField> 
    <ItemTemplate> 
    <asp:LinkButton ID="gdlbtnRemove" runat="server" 
    OnClientClick="RemoveRow(this)">Remove</asp:LinkButton> 
    </ItemTemplate> 
</asp:TemplateField> 

這是我的javascript代碼

<script type="text/javascript"> 
    function RemoveRow(rowindex,objref) 
    { 
    var row=objref.parentNode.parentNode; 
    row.Remove(); 
    } 
</script> 

林新的JavaScript .... ...

+0

就像你說的,你是新來的JavaScript,我會建議你使用劍道電網非常有益的,開放源碼的 http://demos.kendoui.c​​om/web/ grid/index.html http://demos.kendoui.c​​om/web/overview/index.html – RohitWagh 2012-03-25 08:17:56

回答

3

試試這個:

apsx:

<ItemTemplate> 
    <asp:LinkButton ID="gdlbtnRemove" runat="server"  
    OnClientClick="return RemoveRow(this)">Remove</asp:LinkButton> 
</ItemTemplate> 

的Javascript:

function RemoveRow(item) { 
    var table = document.getElementById('myGridView'); 
    table.deleteRow(item.parentNode.parentNode.rowIndex); 
    return false; 
} 
+0

這裏的問題是點擊刪除按鈕後,相應的gridview行先消失然後再次出現 – ksg 2012-03-25 17:22:06

+0

這可能發生如果點擊事件冒起來,頁面回來。 LinkBut​​ton定義中的'Return RemoveRow(this)'結合處理函數返回false應該可以阻止這個事件的冒泡。 – 2012-03-26 11:29:07

1

舊後我知道,但Tsachi的回答幾乎是完美的,我除了

var table = document.getElementById('GridviewID'); 

不得不成爲這個

var table = document.getElementById("<%= GridviewID.ClientID %>"); 

萬一別人看着這個