值不通过jQuery .val()/ setItem传递

时间:2017-01-25 20:28:30

标签: javascript jquery

我获得了一段代码来更新我们的托管买家网站,我们只能添加JavaScript和CSS(不直接使用HTML),这样可以通过将产品直接添加到购物车(通过隐藏的iframe)来快速订购。代码大部分都有效,但它没有正确发送数量。我们只获得最低金额,而不是用户输入的金额。

第一个评论行是原始数量输入,但我们必须编辑它限制我们销售此产品的方式。我无法获得开放输入字段或下拉列表。

    if ($(this).attr ("onclick").toLowerCase().indexOf("boxed") == -1)
    {
        $(this).before ('<select class = "dropdownPicker" id="' + $(this).attr ("id")  + '_quantity"> <option value="6">6</option> <option value="12">12</option> <option value="18">18</option> <option value="24">24</option><option value="30">30</option><option value="36">36</option></select>');
        //$(this).before ("<input id='" + $(this).attr ("id")  + "_quantity' value='1' style='width:40px'>");
        // changes the on click link to be executed on the new iframe, and adds an alert.
        $(this).attr ("onclick", $(this).attr ("onclick").replace ("location.href", "alert('Product will be added to the shopping cart');localStorage.setItem('selectedQuantity', $('#" + $(this).attr ("id")  + "_quantity').val());hiddenFrameForLink.location.href"));
        // replaces the a target to remote location
        $(this).attr ("target", "hiddenFrameForLink");
        // changes the caption of the button.
        $(this).text ("Add to Cart");
    }

1 个答案:

答案 0 :(得分:0)

您有一个onclick处理程序,但这不是检测用户从select中选择的内容的方法 - 它们会在第一次点击时触发,以显示下拉列表,在他们选择任何东西之前。

您需要使用onchange