Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.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 计算形式变化_Javascript_Jquery - Fatal编程技术网

Javascript 计算形式变化

Javascript 计算形式变化,javascript,jquery,Javascript,Jquery,我不是javascript专家,所以我来这里寻求帮助。我想动态计算形式元素变化的价格 HTML结构: <div class="semOrder"> <h1>Calculate price</h1> <form name="bestelling" id="bestelling" method="GET" action="/offerte-aanvragen/" style="margin-top:10px" novalida

我不是javascript专家,所以我来这里寻求帮助。我想动态计算形式元素变化的价格

HTML结构:

<div class="semOrder">
        <h1>Calculate price</h1>
        <form name="bestelling" id="bestelling" method="GET" action="/offerte-aanvragen/" style="margin-top:10px" novalidate="novalidate">
    <input name="p" value="S2V1a2VudGVudCA1JiMyMTU7NSw1bQ==" hidden="">
    <input name="c" value="TGVnZXJ0ZW50ZW4=" hidden="">
    <select name="d" style="color:white;" class="valid">
        <option value="0" selected="">Aantal dagen:</option>
        <option value="1">1 day</option>
        <option value="2">2 days</option>
        <option value="3">3 days</option>
        <option value="4">4 days</option>
        <option value="5">5 days</option>
        <option value="6">6 days</option>
        <option value="7">7 days</option>
    </select><br><br>
    <p>Aantal: <input name="a" value="1" style="width:20px!important"> tenten</p>
    <p>Prijs: <input id="priceContainer" value="24,95"></p>
    <input id="persoonShower" type="submit" value="offerte aanvragen">
</form>

    </div>

计算价格
安塔尔达根:
一天
2天
三天
4天
5天
6天
7天


安塔尔:坦滕

普里斯:

现在我需要它,当名称为
d
a
的字段被更改时,它应该使用
(d*a)+5
进行计算,然后返回
#priceContainer
中的金额

一个jQuery方法是预处理的

提前谢谢

(函数($){
$(函数(){
var$d=$('select[name=“d”]”),
$a=$('input[name=“a”]”),
$price=$(“#priceContainer”);
函数计算(){
var输出=(parseInt($d.val(),10)*parseFloat($a.val())+5;
$price.val(输出);
}
$d.变更(计算);
$a.keyup(计算);
});
})(jQuery)

计算价格
安塔尔达根:
一天
2天
三天
4天
5天
6天
7天


安塔尔: 天幕

普里斯:


使用keyup和on change都可以获得实时更改。如果给a、d字段指定一个类,以使选择更简单,那就更好了

$(文档).ready(函数(){
$(“[name='d'],[name='a']”)。在(“change keyup”,function()上{
$(“#priceContainer”).val(($(“[name='d']”)val()*$(“[name='a']”)val())+5)
});
});

计算价格
安塔尔达根:
一天
2天
三天
4天
5天
6天
7天


安塔尔: 天幕

普里斯:


您可以使用jquery
.change()
.on()
功能来动态提取和计算值。下面是一个快速实现这一点的方法

$('select[name="d"]').change(function(){

    var d = $(this).val();

    var a = $('input[name="a"]').val();

    var total = (a * d) + 5;

    $('#priceContainer').val(total);

});

 $('input[name="a"]').on('input',function(){

        var a = $(this).val();

        var d = $('select[name="d"]').val();

        var total = (a * d) + 5;

        $('#priceContainer').val(total);

});
这是工作小提琴