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