将数据查询的结果与jQuery相乘

时间:2013-05-24 13:36:20

标签: php jquery mysql multiplying

我无法在jQuery脚本中将数据库搜索结果与php相乘。 我回应了db结果,它是数据库中的double类型。所以只是一个数字,我希望它乘以一个数字和一个带数字的变量。

我尝试通过在jQuery输出中添加数字和变量来做到这一点 像这样:

$.post('nutritional_value.php', {value:value}, function(data){
        $('#search_result2').html(data*uneseno*10);
        });

uneseno和10,是我希望它与之相乘的变量和数字。 相反,我只是从数据库中获得直接值。

这是.php文件:

<?php

include 'connect.php';
$value = $_POST['value'];

$query = mysql_query("SELECT FAT FROM ccm WHERE NAME LIKE '$value%'");
while( $run = mysql_fetch_array($query)){

    $fat = $run['FAT'];

            echo $fat;
}

    ?>

这是剧本:

<script>
function funkcija() {
    var value = $('a').text();
    $('#hidden1').show();
    $('#jedinice_butt').click(function () {
        var odabrano = $("#dropdown option:selected").text();
        var uneseno = $("#input_jedinica").val();
        if (odabrano === "g") {
            $.post('nutritional_value.php', {
                value: value
            }, function (data) {

                $('#search_result2').html(data * uneseno * 10);
            });
        }
    });
}   
</script>

当我在输入字段中输入时,uneseno变量是一个数字。 控制台不会显示任何错误或任何错误。

我错过了什么吗?

1 个答案:

答案 0 :(得分:1)

问题在于:

var uneseno = $("#input_jedinica").val();

val()返回一个字符串......

解决方案:使用parseFloat()

$.post('nutritional_value.php', {
            value: value
        }, function (data) {

            $('#search_result2').html(data * parseFloat(uneseno) * 10);
        });