我的页面上有一个 Dropdown、Panel1、panel2 和一个按钮。
在 Panel1 里面有 gridview1 和在 panel2 中类似我们有 gridview2
但是我在 javascript onload 中得到一个错误,在下面提到的行中说“需要对象”
if (parseInt($('#<%= gvSelectedInstitutelist.ClientID %>').length) == 0)
当网格没有数据时抛出错误..或长度为零..
错误是:“预期对象”
我的页面上有一个 Dropdown、Panel1、panel2 和一个按钮。
在 Panel1 里面有 gridview1 和在 panel2 中类似我们有 gridview2
但是我在 javascript onload 中得到一个错误,在下面提到的行中说“需要对象”
if (parseInt($('#<%= gvSelectedInstitutelist.ClientID %>').length) == 0)
当网格没有数据时抛出错误..或长度为零..
错误是:“预期对象”
将javascript放入您的html文件中。在此之后,如果可能,请使用 jQuery。
/edit:我已经启动了一个 webforms 项目来测试这一点:内容是一个 asp:面板包含一个 GridView 元素。我用一行虚拟数据创建了一个数据集,并将脚本粘贴在 aspx 代码下方。
<asp:Content runat="server" ID="BodyContent" ContentPlaceHolderID="MainContent">
<asp:Panel ID="Panel1" runat="server">
<asp:GridView ID="GridView1" runat="server">
</asp:GridView>
</asp:Panel>
<script type = "text/javascript">
$(document).ready(function () {
if ($('#<%= GridView1.ClientID %>').length == 0) {
$('#<%= Panel1.ClientID %>').hide();
console.log("Length == 0");
}
});
后面的代码:
protected void Page_Load(object sender, EventArgs e)
{
DataSet ds = new DataSet();
DataTable dt = new DataTable();
dt.Columns.Add("Name");
dt.Columns.Add("Branch");
dt.Columns.Add("Officer");
dt.Columns.Add("CustAcct");
dt.Columns.Add("Grade");
dt.Columns.Add("Rate");
dt.Columns.Add("OrigBal");
dt.Columns.Add("BookBal");
dt.Columns.Add("Available");
dt.Columns.Add("Effective");
dt.Columns.Add("Maturity");
dt.Columns.Add("Collateral");
dt.Columns.Add("LoanSource");
dt.Columns.Add("RBCCode");
dt.Rows.Add(new object[] { "James Bond, LLC", 120, "Garrison Neely", "123 3428749020", 35, "6.000", "$24,590", "$13,432",
"$12,659", "12/13/21", "1/30/27", 55, "ILS", "R"});
ds.Tables.Add(dt);
GridView1.DataSource = ds;
GridView1.DataBind();
}
这完全适合我。如果 dummydata 在后面的代码中被注释掉,我会返回 Length < 2。如果我使用虚拟数据,控制台中的返回值为 Length > 2。
请在此处发布您的整个 aspx + js 代码。