我有以下gridview控件
<asp:Panel runat="server" ID="pnlBeforeSave" Visible="true">
<asp:GridView ID="gvP" runat="server" AutoGenerateColumns="false" AllowPaging="false"
AllowSorting="false" CssClass="list-table" HeaderStyle-CssClass="header">
<Columns>
<asp:TemplateField HeaderText="Action" ItemStyle-Width="20%" HeaderStyle-HorizontalAlign="Center"
ItemStyle-CssClass="unsortable">
<ItemTemplate>
<input id="btnPay" type="button" onclick="javascript:OpenEditPaymentItemDialogPage('<%# Eval("PmtId") %>');"
value="Edit" class="button save" style="width: 80px" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</asp:Panel>
将griview数据集保存到数据库后,我必须禁用griview。 但btnPay仍然启用。我需要从代码背后做到这一点 有什么想法吗?
答案 0 :(得分:1)
你需要通过添加RunAt =“Server”元素
来使输入类型=“按钮”可以在代码后面访问所以你的代码就像
<ItemTemplate>
<input ruat="server" id="btnPay" type="button" onclick="javascript:OpenEditPaymentItemDialogPage('<%# Eval("PmtId") %>');" value="Edit" class="button save" style="width: 80px" />
</ItemTemplate>
或使用Asp:Button
<ItemTemplate>
<asp:button ruat="server" id="btnPay" type="button" onClientclick="javascript:OpenEditPaymentItemDialogPage('<%# Eval("PmtId") %>');" value="Edit" class="button save" style="width: 80px" > </asp:button>
</ItemTemplate>
比使用data RowDataBound
事件的datagridview和禁用按钮..
答案 1 :(得分:0)
保存数据后,请输入以下代码。我测试过了。 onlcick被禁用。
for (int i = 0; i < gvP.Rows.Count; i++)
{
HtmlInputButton btn = (HtmlInputButton)gvP.Rows[i].FindControl("btnPay");
if (btn != null) btn.Disabled = true;
}
答案 2 :(得分:0)
你可以使用,
<asp:Button ID="btnPay" runat="server" OnClick="btnPay_Click" OnClientClick="return confirm('Are you sure?')" Text="Edit" CommandArgument='<%# Eval("PmtId") %>'/>
public void btnPay_Click(object sender, EventArgs e)
{
var button = (Button)sender;
ClientScript.RegisterStartupScript(typeof(Page), "key", "<script>OpenEditPaymentItemDialogPage('" + button.CommandArgument + "');</script>");
}
答案 3 :(得分:0)
我完成了。
C#
ScriptManager.RegisterStartupScript(this, this.GetType(), "HidePaymentItemButtons", "javascript:disableAllButtons_PT;", true);
JS
function disableAllButtons_PT() {
var gridViewID = "<%=gvPamentItemsList.ClientID %>";
var gridView = document.getElementById(gridViewID);
var gridViewControls = gridView.getElementsByTagName("input");
for (i = 0; i < gridViewControls.length; i++) {
// if this input type is button, disable
if (gridViewControls[i].type == "submit") {
gridViewControls[i].disabled = true;
}
}