繁体   English   中英

如何在jQuery中将输入值分配给我的url参数?

[英]How do I assign the value of input to my url parameter in jQuery?

我正在使用ajax链接将产品添加到WordPress的购物车中。 我可以使用以下代码添加没有其他产品选项的产品

<a rel="nofollow" href="/?add-to-cart=11" data-quantity="1" data-product_id="11" data-product_sku="" class="add_to_cart_button ajax_add_to_cart">Add to cart</a>

但是我正在工作的网站使用了一个名为Extra product options的插件,该插件在将商品添加到购物车之前添加了复选框或日期(预订目的)

只要我将插件生成namevalue属性提供给url,就可以将产品添加到使用ajax链接包含的选项的购物车中。 请看下面的复选框示例:

插件提供的HTML复选框:

<input class="tmcp-field" name="tmcp_checkbox_0_0" value="_0" type="checkbox">

我可以将产品添加到购物车用,如果我创建这样的链接检查名称和额外的产品选择和它的选项框提供的价值:

<a rel="nofollow" href="/?add-to-cart=11&tmcp_checkbox_0_0=_0" data-quantity="1" data-product_id="11" data-product_sku="" class="add_to_cart_button ajax_add_to_cart">Add to cart</a>

在我的情况下,我使用日期选择器来设置产品的预订日期。 日期选择器的html是: <input type="text" class="tmcp-field" id="tmcp_date_1" value="" name="tmcp_date_0">

datepicker html的值始终为value =“”,即使我为它选择了一个日期,也不同于checbox中已经有一个checked或unchecked值的日期。

我正在考虑获取datepicker的值,然后在使用jquery选择日期时将其传递给变量

$( "#epo-build-datepicker" ).datepicker({


    onSelect: function() {
        var dateObject = $(this).datepicker('getDate');
        console.log(dateObject);

        var paramValue = $(this).val();
        console.log("Date value is:" + paramValue);

    }

});

您知道如何将所选日期的值传递给我的url参数&tmcp_date_0吗

<a rel="nofollow" href="/?add-to-cart=11&tmcp_date_0=VALUEOF#epo-build-datepicker" data-quantity="1" data-product_id="11" data-product_sku="" class="add_to_cart_button ajax_add_to_cart epo-build-cart-url-param">Add to cart</a>

用jQuery添加paramValue

<a rel="nofollow" href="/?add-to-cart=11" data-quantity="1" data-product_id="11" data-product_sku="" class="add_to_cart_button ajax_add_to_cart epo-build-cart-url-param">Add to cart</a>

$('a.add_to_cart_button').on('click', function(e){
  e.preventDefault();
  var val = $(this).attr('href');
  console.log(val)
})

$( "#epo-build-datepicker" ).datepicker({


    onSelect: function() {
        var dateObject = $(this).datepicker('getDate');
        console.log(dateObject);

        var paramValue = $(this).val();
        var _href = $('a.add_to_cart_button').attr('href');
        _href = _href+'&tmcp_date_0'+paramValue;
        $('a.add_to_cart_button').attr('href', _href);


    }

});
//get href value of link
var uri = $(".add_to_cart_button").attr('href');

//assign new param
uri = uri + "&tmcp_date_0="+paramValue;

//assign new uri to a tag
$(".add_to_cart_button").prop("href", uri);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM