私は素晴らしい機能をする関数(以下)を持っていますが、var CustomerID = grid.rows [i] .cells[1].innerText;の値を与える列'CustomerID'を非表示にする必要があります。この列を非表示にすると、関数は正常に機能しなくなりますが、間違った値を取得しています。誰かがこれを手伝うことができますか?
隠しフィールドはこんな感じ…
<asp:TemplateField>
<ItemTemplate>
<asp:Label id="lblCustomerId" runat ="server" text='<%# Eval("CustomerID")%>'/>
</ItemTemplate>
</asp:TemplateField>
働き:
function mapSelectedClick()
{
var customerIDs = "";
var grid = document.getElementById('<%=grdCustomers.ClientID %>');
var count = 0;
for (var i = 1; i < grid.rows.length; i++)
{
var cell = grid.rows[i].cells[0];
var CustomerID = grid.rows[i].cells[1].innerText;
for (var j = 0; j < cell.childNodes.length; j++)
{
if (cell.childNodes[j].type == "checkbox")
{
if (cell.childNodes[j].checked)
{
customerIDs += CustomerID.toString() + ',';
count++;
}
}
}
}
if (count == 0)
{
alert("Please select at least one customer to map.");
return false;
}
customerIDs = customerIDs.substring(0, customerIDs.length-1);
window.open("MapCustomers.aspx?CustomerIDs=" + customerIDs);
}