【发布时间】:2014-04-08 21:01:05
【问题描述】:
这是我的场景:
我想根据我的 gridview 中显示的行数显示一个按钮 (btnGenerate)。我让它显示一秒钟然后它又消失了。我正在使用我的其他按钮之一(btnImport)的onclientclick。我认为导致问题的原因是在同一个按钮(btnImport)的 OnClick 事件上,两个 gridview 为每个数据绑定执行。这可能是问题吗?我已经使用 javascript 编写了一个脚本来从客户端执行此任务。有更好的方法吗?我可以做些什么来解决我的问题?
这是我到目前为止的代码:
<asp:Button runat="server" ID="btnImport" Text="Load Data from File"
BackColor="#990000" ForeColor="White" nowrap OnClick="btnImport_Click"
style="display:none" OnClientClick="DisplayButtonGenerate()"/>
<asp:Button ID="btnGenerate" runat="server" Text="Generate New Stock Codes"
BackColor="#990000" ForeColor="White" OnClick="btnGenerate_Click"
style="display:none" />
我有两个网格视图:显示所有错误记录的 ErrorsGrid 和显示正确记录的 InventoryGrid。就像我上面说的,如果 ErrorsGrid 的 rowCount=0,则显示 btnGenerate。
protected void btnImport_Click(object sender, EventArgs e)
{
InventoryGrid.DataBind();
ErrorsGrid.DataBind();
}
protected void btnGenerate_Click(object sender, EventArgs e)
{
FinalMessage.AppendLine(_InsertWrapper.PostData());
}
这是脚本:
<script language="javascript" type="text/javascript">
function DisplayButtonGenerate() {
var rowCount = <%=ErrorsGrid.Rows.Count %>;
var buttonGen = document.getElementById("<%=btnGenerate.ClientID%>");
if(rowCount == 0)
{
buttonGen.style.display = "block";
}
}
</script>
【问题讨论】:
-
显示
btnGenerate按钮后你想做什么?你想跳过帖子吗?
标签: c# javascript asp.net button gridview