Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何根据单击的链接/过滤器向onclick函数添加字符串?_Javascript_Jquery_Html_Filtering_Adobe Analytics - Fatal编程技术网

Javascript 如何根据单击的链接/过滤器向onclick函数添加字符串?

Javascript 如何根据单击的链接/过滤器向onclick函数添加字符串?,javascript,jquery,html,filtering,adobe-analytics,Javascript,Jquery,Html,Filtering,Adobe Analytics,希望使用jQuery或js 我有可以改变页面显示方式的过滤器。我正在跟踪通过使用锚标记上的onclick过滤的图像上的点击。我想通过与当前包含在onClick中的文本一起选择的链接/过滤器 我有过滤器和trackLink工作。我只需要将数据过滤器值附加到锚标记中的onclick 下面是一个例子,让我们了解情况 过滤器 <a href="#" data-filter=".optionone">Option One</a> <a href="#" data-filter

希望使用jQuery或js

我有可以改变页面显示方式的过滤器。我正在跟踪通过使用锚标记上的onclick过滤的图像上的点击。我想通过与当前包含在onClick中的文本一起选择的链接/过滤器

我有过滤器和trackLink工作。我只需要将数据过滤器值附加到锚标记中的onclick

下面是一个例子,让我们了解情况

过滤器

<a href="#" data-filter=".optionone">Option One</a>
<a href="#" data-filter=".optiontwo">Option Two</a>

正在筛选的内容-同一页面

<div class="item">
    <a onclick="trackLink('Text I Want', 'Text I want')" href="1.aspx">
        <img src="1.jpg" alt="1" />
        <div>Test</div>
    </a>
</div>  

<div class="item">
    <a onclick="trackLink('Text I Want', 'Text I want')" href="2.aspx">
        <img src="2.jpg" alt="2" />
        <div>Test</div>
    </a>
</div>  

我想要的-传递数据筛选器值

<div class="item">
    <a onclick="trackLink('Text I Want', 'Text I want' + the filter name as it is being click passed)" href="1.aspx">
        <img src="1.jpg" alt="1" />
        <div>Test</div>
    </a>
</div>   

在JQuery中,您可以使用如下内容。这里


我建议你这样做:

$(".item a").click(function () {
    var value = $(this).attr("data-filter"); // 'this' = the a element being clicked
    trackLink('text you want', 'text you want' + value);
});

最后,从onClick中删除trackLink函数,即使是在a标记上,也不能像在HTML元素的函数中那样附加文本

我要做的是通过在过滤器中添加一个类来切换HTML,并将“我想要的文本”移动到它们自己的数据值:

<a href="#" class="filter" data-filter=".optionone">Option One</a>
<a href="#" class="filter" data-filter=".optiontwo">Option Two</a>
...
<div class="item"><a data-first-text="Text I Want" data-second-text="Text I want" href="1.aspx"><img src="1.jpg" alt="1" /><div>Test</div></a></div>

将jQuery包含在文档的开头

<script src="http://code.jquery.com/jquery-latest.js"></script>
你的标签会像这样

onclick="anotherFunction(getDataFilter('.item a'));"
或者,如果您想要纯javascript解决方案:

document.querySelector('.item a').getAttribute("data-filter");

希望有帮助

你需要更多的javascript来完成这一切。这只是HTML。对-让过滤器和trackLink功能正常工作,但我如何将数据过滤器附加到它?缺少很多信息。。。如果你想得到你的数据属性,你只需要做
$(selector).attr(“数据过滤器”)
@pmrotule你如何将它添加到@rookstrife中我把它作为一个答案,你如何获取点击过滤器的值并将其添加到锚定标记中,如-使用这个关键字,请查看演示,然后我可以添加onclick=“trackLink()”或者将trackLink(第一个文本,第二个文本+过滤文本)链接到HTML链接?通过这种方式,onclick值被传递给AdobeOmniture(跟踪)。jQuery为您调用它。
jQuery.noConflict();
jQuery(document).ready(function($){

    getDataFilter = function(selector){

        return $(selector).attr("data-filter");
    }

    anotherFunction = function(dataFilter){

        // do something
    }
});
onclick="anotherFunction(getDataFilter('.item a'));"
document.querySelector('.item a').getAttribute("data-filter");