如何在ASP.NET中的第三个文本框中立即从两个文本框值中除以后执行值

时间:2016-11-02 09:34:42

标签: javascript asp.net

我有一个包含母版页和内容页的项目,在内容页面中有三个文本框名称
 1)tbxTotalQuantity
2)tbxTotalPrice和
3)tbxPricePerItem。
我想在输入textbox(1)和(2)之后在第三个文本框(tbxPricePerItem)上显示pricePerItem。在web上搜索后,我正在尝试根据完整的工作编写代码但是它不起作用。请帮助我谢谢高级。< / p>

 <div class="panel-body">

                     <h6>&nbsp;&nbsp;Total Quantity</h6>
                     <asp:TextBox ID="tbxTotalQuantity" CssClass="form-control" onkeyup="setPrice();"  runat="server"></asp:TextBox>

                <div class="row">
                    <div class="col-md-6">
                        <h6>&nbsp;&nbsp;Total Price</h6>
                        <asp:TextBox ID="tbxTotalPrice"  CssClass="form-control" onkeyup="setPrice();" runat="server"></asp:TextBox>
                    </div>
                    <div class="col-md-6">
                        <h6>&nbsp;&nbsp;Price/Item</h6>
                        <asp:TextBox ID="tbxPricePerItem" CssClass="form-control"  runat="server"></asp:TextBox>
                    </div>
                </div>


            </div>

 <script type="text/javascript">

        function setPrice() {
            var totalQuantity = document.getElementById('tbxTotalQuantity').value;           
            var totalPrice = document.getElementById('tbxTotalPrice').value;          
            var result = parseInt(totalPrice) / parseInt(totalQuantity);
            if (!isNaN(result)) {
                document.getElementById('tbxPricePerItem').value = result;
              
            }
        }
    </script>

1 个答案:

答案 0 :(得分:1)

上述问题的解决方案是利用ASP.Net内联标记以及ASP.Net控件的ClientID和UniqueID属性。这两个术语的定义如下:

ClientID - 当控件呈现为控件的HTML ID时,ASP.NET会自动为服务器生成ClientID

UniqueID - 由ASP.NET分配给控件的分层限定的唯一标识符,呈现为控件的HTML名称

所以你可以尝试下面的脚本:

<script type="text/javascript">

        function setPrice() {
            var totalQuantity = document.getElementById("<%=tbxTotalQuantity.ClientID%>").value;           
            var totalPrice = document.getElementById("<%=tbxTotalPrice.ClientID%>").value;          
            var result = parseInt(totalPrice) / parseInt(totalQuantity);
            if (!isNaN(result)) {
                document.getElementById("<%=tbxPricePerItem.ClientID%>").value = result;

            }
        }
    </script>

希望它会对你有所帮助。

由于