Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.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 JS变量未过帐_Javascript_Php - Fatal编程技术网

Javascript JS变量未过帐

Javascript JS变量未过帐,javascript,php,Javascript,Php,我有一段JavaScript代码,它可以更改字段值,并且可以正常用于HTML输出 <script> var basePrice = 10; $(".vars").change(function() { newPrice = basePrice; $('.vars option:selected').each(function() { newPrice += $(this).data('price') }); $('#item-price').html(newPrice)

我有一段JavaScript代码,它可以更改字段值,并且可以正常用于HTML输出

<script>
var basePrice = 10;

$(".vars").change(function() {
newPrice = basePrice;

$('.vars option:selected').each(function() {
    newPrice += $(this).data('price')
});

$('#item-price').html(newPrice);
});

</script>

var基准价格=10;
$(“.vars”).change(函数(){
新价格=基准价格;
$('.vars选项:选中')。每个(函数(){
newPrice+=$(此).data('price'))
});
$(“#项目价格”).html(新价格);
});
我还有一个表单,可以将数据发布到另一个php页面,该页面也可以正常工作,只有#item price var没有发布。我几乎可以肯定我的字段命名正确,如下所示

<input type="hidden" name="product_amount" id="item-price" value="">


有人能帮忙吗?

输入字段不使用.html(),而是使用.val()

另外,您可能需要初始化newPrice变量

var newPrice = basePrice;
此外,正如Brent提到的,您可能希望使用或将字符串数据值转换为可用的数字

newPrice += parseFloat($(this).data('price'));

此外,我认为您需要对“newPrice+=$(this).data('price')”进行数字转换,以便实际添加它们,否则它将只执行字符串concat(尽管我可能错了)。您是对的。数据值将是一个字符串,所以parseInt将用于转换整数,或用于转换小数的parseFloat,如2.95
newPrice += parseFloat($(this).data('price'));