jQuery从.val()返回[object HTMLInputElement]而不是字符串

时间:2014-12-10 03:06:25

标签: javascript jquery input

我正在使用jQuery动态生成一些输入字段和按钮。我为这些元素提供了ID属性,这些属性也是使用算法动态生成的:

// Where menuItem is a string (ex. 'Child Admission' -> 'Child_AdmissionQuantity')
var quantityId = menuItem.replace(' ', '_') + 'Quantity'; 

然后我使用相同的算法使用jQuery选择字段并尝试获取输入字段的值:

// Get Reference to the quantity field
    var quantityId = '#' + menuItem.replace(' ', '_') + 'Quantity';
    console.log("quantityId: " + quantityId);

    // Get the Value of the field
    var quantity = $(quantityId).val();

jQuery不返回字符串,而是返回[object HTMLInputElement]。

以下是我创建表单字段的方法:

function processMenuItem(menuItem) {
    // Generate a quantityId
    var quantityId = menuItem.replace(' ', '_') + 'Quantity';
    console.log("menuItem: " + menuItem + "\n"
                    + "quantityId: " + quantityId + "\n");

    // Generate a Menu Item Option
    var menuItemOption = '<div class="product">'
                            + '<div class="productName">' + menuItem + '</div>'
                            + '<div class="quantity">'
                            + '<input type="text" name="quantity" id="' + quantityId + '" placeholder="2" />'
                            + '</div>'
                            + '<button type="button" onclick="addItem(\'' + menuItem + '\')">Add Item</button>'
                            + '</div><!-- End of .product -->';

    // Add the Option to the Menu
    $('#displayMenu').append(menuItemOption);
}

我需要表单处理的实际价值,任何人都知道解决方法吗?

谢谢!

0 个答案:

没有答案