Html5下拉菜单将文本重设为NaN

Html5 Dropdown get text reults as NaN

本文关键字:NaN 文本 下拉菜单 Html5      更新时间:2023-09-26

我得到了一个下拉菜单,它在php中完成,看起来像这样:

function HowDangerIsAProduct(){
        $howDangerIsAProductInNumbers = array("secure","mostly Secure","very Danger");
        $stringchain = '<select class="form-control" id="HowDangerIsaProduct" name="HDIAP">';
        $stringchain .= '<option disabled="disabled">How Danger would you rate that product</option>';

        foreach ($howDangerIsAProductInNumbers as $hdiapin)
        {
            $stringchain .= '<option>'
                 .$hdiapin
                 .'</option>';
        }
        $stringchain .= '</select>';
        return $strinchain;
    }

现在用户应该选择一个选项,我想获取文本,所以我构建了一些javascript/jQuery代码来获取所选文本:

$('#HowDangerIsaProduct').change(function(){
    Impact =  + $(this).text();
});

我也尝试过.val(),但结果总是NaN但如果我在数组中放入数字(例如1、2、3、4),效果很好,但我想将文本保存到数据库中。

你知道我该怎么解决这个问题吗?

Impact =  + $(this).text();

将返回Nan,因为您正在尝试使字符串整数为正。

因此,只需在字符串之前删除+,并使其成为:

Impact =  $(this).text();

注意:如果文本是一个数字,请首先对Number使用parseInt

Impact =  + parseInt($(this).text())