我试图调用外部JavaScript功能接受如下3个参数:如何将控件的ID传递给外部JavaScript文件?
function CalculateSum(grdID, hiddenID, TargetColumnIndex) {
debugger;
var oDataGrid = document.getElementById("<%= grdID.ClientID %>");
var tableRows = oDataGrid.rows;
var sum = 0;
for (var i = 1; i < tableRows.length; i++) {
var col1 = oDataGrid.rows[i].cells[TargetColumnIndex];
for (j = 0; j < col1.childNodes.length; j++) {
if (col1.childNodes[j].type == "text") {
if (!isNaN(col1.childNodes[j].value) && col1.childNodes[j].value != "") {
sum += parseInt(col1.childNodes[j].value)
}
}
}
}
if (!isNaN(sum)) {
document.getElementById('<%=hiddenID.ClientID %>').value = sum;
}
}
这是我怎么称呼它:
<asp:Button ID="btnSave" runat="server" CssClass="btn btn-primary"
OnClientClick="CalculateSum('grdPlanObjectivesStandardWeights', '#hidden', 2);"
OnClick="btnSave_Click"
Text="<%$Resources:DCAACommon, Save%>"
ValidationGroup="SaveStandardWeight" />
注:
- 当我运行此代码时,我有一个错误说:
'CalculateSum' is undefined
。 我试图传递的参数是:
grdPlanObjectivesStandardWeights
是asp:GridViewID
。hidden
是asp:HiddenFieldID
。2
是一个int值。我甚至无法调试此功能。
的功能定义如下:
<script src="../../Common/Scripts/SummationOfAGridviewColumnValues.js"></script>
什么是错我的代码/方法呢?
检查,如果你是正确的,包括在页面与否的头JavaScript文件。 – Manish
我应该在之前提到的JS文件包括正确。 – Null
除了Manish的观点,请确保该方法对页面可见。如果你已经完成了Manish的观点,它可能会被错误地隐藏在内部。另一个检查是有位于页面底部。如果它显示你的功能,那么它包含正确。否则,调用方法不可见或不可见。 –