2017-07-06 60 views
0

我有两个单选按钮,我想要使用JS/JQuery提取数据产品名称从任何被点击(任何表单提交之前)。从单选按钮返回与点击最接近的属性与jQuery点击

我想这种代码,但不能得到它的工作:

return jQuery({{Click Element}}).closest("form").attr('[data-product-name]'); 

对于背景下,这是在谷歌标签管理自定义JavaScript变量用来将数据放在一些跟踪。

单选按钮代码:

<div class="choose-variants"> 
    <input type="radio" 
    id="MB0" 
    name="variantSku" 
    value="MB" 
    data-unit-price="9" 
    data-product-name="HB MB" checked /> 
<label for="MB0">B &amp; C 
<span>Save<strong class="choose-label">Recommended</strong></span> 
</label> 
<input type="radio" 
    id="MB-O1" 
    name="variantSku" 
    value="MB-O" 
    data-unit-price="9"data-product-name="HB MB O"/> 
<label for="MB-O1">B only 
</label> 

回答

0

这里是你的工作的例子。点击单选按钮,你会得到你的输出控制台:

$('input[type=radio]').change(function() { 
 
    console.log($(this).data('product-name')) 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="choose-variants"> 
 
    <input type="radio" id="MB0" name="variantSku" value="MB" data-unit-price="9" data-product-name="HB MB" checked /> 
 
    <label for="MB0">B &amp; C 
 
<span>Save<strong class="choose-label">Recommended</strong></span> 
 
</label> 
 
    <input type="radio" id="MB-O1" name="variantSku" value="MB-O" data-unit-price="9" data-product-name="HB MB O" /> 
 
    <label for="MB-O1">B only 
 
</label>