要记录的Javascript代码点击超链接 - Qualtrics

时间:2014-06-13 12:30:30

标签: javascript hyperlink record qualtrics

对于Qualtrics中构建的调查实验,我需要记录受访者是否点击了指向外部网页的超链接。我不熟悉Javasctript。记录这些信息的最简单的解决方案是什么?谢谢

1 个答案:

答案 0 :(得分:0)

有几种方法可以解决这个问题,其中一种比较常见的方法实际上是" click-thru"充当您网站与外部网站之间的中介页面的网页。

如果您只想使用javascript",则在点击链接时,您必须回拨(例如通过ajax)到另一个页面。

例如,您可以设置如下链接:

<a href="http://www.example.com" onclick="return externalLink(this.href);">click me</a>

然后,您将拥有如下的javascript函数:

function externalLink(location) {
    // make an ajax GET request to your "logging" page
    var req = new XMLHttpRequest();
    req.open('GET', '/log.php?url=' + encodeURIComponent(location));
    req.send(null);

    // return "true" to allow the link to be followed
    return true;
}

这种方法的问题在于,由于无法预料的网络问题,服务器处理时间等原因,ajax请求可能需要一段时间。最后,它可能会在这里和那里错过几次点击,如果你可能不是最好的方法想要&#34;完美&#34;结果

我建议您尝试使用所有外部网址的点击页面,这样您就可以确保捕获所有点击。这可以通过以下所有方式完成(在PHP中):

主要HTML页面中包含链接:

<a href="/clickthru.php?url=<?php echo urlencode("http://www.example.com"); ?>">click me</a>

clickthru.php页面:

<?php

$url = $_GET['url'];
if (!empty($url)) {
    // perform all of your logging that's necessary
    // ...

    // redirect this page to the desired external URL
    header('Location: ' . $url, true, 302);
    exit();
}