我的函数得到 NaN 是什么?

What am I getting NaN with my fucntion?

以下 'find' 选择器正在获取值 NaN 如果值包含字母字符:

form.find('input[name="product_name"]').val(); //results in NaN if alphabets

代码:

<script type="text/javascript">
$("document").ready(function(){
    $('.add_to_cart').click(function() {
    var form = $(this).closest('form');
    var product_id = form.find('input[name="product_id"]').val();
    var product_price = form.find('input[name="product_price"]').val();
    var product_name = form.find('input[name="product_name"]').val(); //Alphanumeric value
    var product_qty = form.find('input[name="product_qty"]').val();



    var data = {
        "action": "AddItem",
        "product_id": +product_id,
        "product_price": +product_price,
        "product_name": +product_name,
        "product_qty": +product_qty,
    };

    $.ajax({
        type: 'POST',
    dataType: "html",

        url: "cart_array.php",
        data:  data,
        success: function(data) {
        $("#cart_total").html(data); 
        }
    });

return false;

});
});
</script> 

问题是你的变量名前面的+:

var data = {
    "action": "AddItem",
    "product_id": product_id,
    "product_price": product_price,
    "product_name": product_name,
    "product_qty": product_qty
};