Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在ASP.NET的第三个文本框中立即执行两个文本框值除以后的值_Javascript_Asp.net - Fatal编程技术网

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

Javascript 如何在ASP.NET的第三个文本框中立即执行两个文本框值除以后的值,javascript,asp.net,Javascript,Asp.net,我有一个包含母版页和内容页的项目,在内容页中有三个文本框名称 1) TBX总量 2) TBX总价格和 3) tbxPricePerItem. 在输入文本框(1)和(2)后,我想在第三个文本框(tbxPricePerItem)上显示pricePerItem。在网上搜索后,我正试图根据完成的工作编写代码,但没有工作。请帮助我,高级感谢 <div class="panel-body"> <h6>&nbsp;&nbsp

我有一个包含母版页和内容页的项目,在内容页中有三个文本框名称
1) TBX总量
2) TBX总价格和
3) tbxPricePerItem.
在输入文本框(1)和(2)后,我想在第三个文本框(tbxPricePerItem)上显示pricePerItem。在网上搜索后,我正试图根据完成的工作编写代码,但没有工作。请帮助我,高级感谢

 <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>

总量
总价
价格/项目

函数setPrice(){
var totalQuantity=document.getElementById('tbxTotalQuantity')。值;
var totalPrice=document.getElementById('tbxTotalPrice')。值;
var结果=parseInt(总价)/parseInt(总数量);
如果(!isNaN(结果)){
document.getElementById('tbxPricePerItem')。值=结果;
}
}

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

ClientID–ASP.NET在将控件呈现为控件的HTML id时自动为服务器生成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>

函数setPrice(){
var totalQuantity=document.getElementById(“”)值;
var totalPrice=document.getElementById(“”)值;
var结果=parseInt(总价)/parseInt(总数量);
如果(!isNaN(结果)){
document.getElementById(“”).value=result;
}
}
希望它能帮助你


谢谢

您收到了什么问题?我想JS不会通过id找到任何文本框,因为它们在conent页面中。如果它们在内容页中,则ID有前缀。尝试在浏览器中查看页面源代码,您将在母版页上看到完整的ID和您的脚本?请查看您的浏览器控制台并找到您的错误所在?@SunilKumar母版页中的脚本如何??因为这个问题与脚本所在的位置无关。它可以工作,非常感谢。还有一点关于另一件事,当我清除tbxTotalPrice的文本时,因为出现tbxPricePerItem文本,我希望它也与tbxTotalPrice一起动态。抱歉,英语不好。哦,太好了。。如果您还有其他疑问,请编辑您的问题并再次更新问题。。推荐你很容易。如果我的解决方案对你有帮助的话,请别忘了投票表决并解决它。。谢谢我很高兴你…尽早回复…这就足够了。如果我的解决方案对你有帮助,请投票并标记。。谢谢