如何为$mult
中存在的标签lblGrandTotal
分配FooterTemplate
值。
我已经在Java代码下面使用了$mult
值来指定存在于网格视图之外的标签。
的JavaScript
<script>
$(document).ready(function () {
$(".txtMult input").on('keyup mouseup', multInputs);
function multInputs() {
var $mult = 0;
// calculate Grand total
$("tr.txtMult").each(function () {
// get the values from this row:
var $UnitPrice = $('.UnitPrice', this).val();
var $Quantity = $('.Quantity', this).val();
var $Discountvalue = $('.Discount', this).val() / 100;
var $total = (($UnitPrice) * ($Quantity));
$mult += $total;
});
// for each row:
$("tr.txtMult").each(function () {
// get the values from this row:
var $UnitPrice = $('.UnitPrice', this).val();
var $Quantity = $('.Quantity', this).val();
var $Discountvalue = $('.Discount', this).val() / 100;
var $total = (($UnitPrice) * ($Quantity));
$('.multTotal', this).text(Math.round($total * 100) / 100);
});
$("#<%=Total.ClientID %>").text(Math.round($mult * 100) / 100);
}
});
</script>
网格视图
<asp:GridView ID="gridpur" CssClass="table text-nowrap" ShowFooter="true" runat="server" OnRowDataBound="gridpur_RowDataBound" AutoGenerateColumns="False" DataKeyNames="ItemID" DataSourceID="SqlDataSource1">
<Columns>
<asp:TemplateField HeaderText="Quantity">
<ItemTemplate>
<asp:TextBox ID="txtCalcQuantity" CssClass="Quantity form-control" runat="server"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Unit Price">
<ItemTemplate>
<asp:TextBox ID="txtCalcUnitprice" Width="120" CssClass="UnitPrice form-control" runat="server"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Amount">
<ItemTemplate>
<asp:Label ID="lblTotal" runat="server" CssClass="multTotal" Text="0"></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:Label ID="lblGrandTotal" Text="" runat="server" />
</FooterTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
后面的代码
protected void gridpur_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.CssClass = "txtMult";
}
}
javascript大神给出的解决方案
如果页面上只有一个ID为lblGrandTotal
的控件,则可以将其ID模式设置为“静态”,这将确保这恰好是最终标记中显示的客户端ID。这样您就可以直接在js代码中使用此ID:
<asp:Label ID="lblGrandTotal" Text="" runat="server" ClientIDMode="Static" />
现在,您不再需要任何脚本片段,只需文字ID:
$("lblGrandTotal").text(Math.round($mult * 100) / 100);
同样,只有在此页面上有一个具有此ID的控件时,这才有可能。
替代解决方案是分配您可以查询的内容。例如,CssClass将是某种标准的方法。
<asp:Label ID="lblGrandTotal" Text="" runat="server" CssClass="grandTotalLabel" />
无需在样式表中定义此类。同样,只需确保它没有在其他任何地方使用。现在只查询它:
$(".grandTotalLabel").text(Math.round($mult * 100) / 100);
PHP stringID无法从回显中读入onclick - javascript我有一个音频播放器,可以在HTML中正常工作,但是当我从PHP回显调用时,似乎没有得到div ID的名称,因此它无法播放我的音频。这是我的代码:// Show audio if ($sObj->get('audio') != null) { $sAudio = $sObj->get('audio'); $a…
在php中单击按钮添加表行并设置字段值 - javascript我有一个表单,必须在单击按钮时添加表行。这是我必须动态添加的表行:(addProdToGroup.php)<tr style="text-align: center;" id="products"> <td><?php $j ?></td> <td><s…
如果复选框切换复选框已选中,则在切换div中输入必填字段 - javascript我使用脚本用JavaScript切换了一些div。如果要选中复选框以显示toogle div,我想在toogle div中设置一些“必填”输入字段。有人能弄清楚吗?那是工作吗?function show(id) { if(document.getElementById) { var mydiv = document.getElementById(id); m…
淘汰赛在金字塔中的行为不正确 - javascript我正在使用Pyramid构建一个Webapp,但是Knockout的行为有所不同。我有一个表格: <div data-bind="with: $root.itemToAdd" style="display: none;"> <form data-bind="submit: $root.add…
Javascript无法在Heroku的Django应用中呈现 - javascript在Heroku上部署了Django应用,在我的主页之后,之后的每个页面都不呈现Amazon S3上托管的Javascript文件,但是在Inspect Element中打开Console时,似乎一切都很好。我的HTML文件的标题如下#questions.html <link rel="stylesheet" type="t…