我在多个页面上有一个表单链接。当我点击页面A的表单链接时我需要的只是它在URL上显示为www.form.com?referrer=Page A
,当我提交表单时,我创建了一个隐藏字段referrer
,当我在我的电子邮件中收到它时在引荐来源字段中,它应显示"第A"。
我有这个HTML代码工作正常但是,我不想在每个页面上手动执行,只要用户点击表单链接或收到它应该自动更新的表单:
<a target="_blank" title="Click Here" href="https://myform.com/forms/land_discount?referrer= Beach Club">
以下是我的表单的JavaScript:
答案 0 :(得分:0)
看看你是否正在尝试这样做:
// I'm going to use jQuery, it's easier for me
$(document).ready(function(){
// I used a class so it doesn't do it to every <a> tag
$('a.use_refer').click(function(e){
// Stop the button from submitting normally
e.preventDefault();
// Create a new url
// You may or may not want to use encodeURIComponent() on the path value
var newUrl = $(this).attr('href')+'?referrer='+document.location.pathname;
// Go to the new page
window.location = newUrl;
});
});
</script>
<a href="https://myform.com/forms/land_discount" title="Online Form" class="use_refer">Click Here</a>
答案 1 :(得分:0)
假设您Page A
是路径的最后一个目录。并在DOM准备就绪时将其换行。
注意添加id=
标记后对HTML的更改。
在“Page A”
上HTML:
<script type="text/javascript" src="https://myform.com/forms/js.php/test"></script>
<noscript>
<a href="https://myform.com/forms/test" title="Online Form">Game Form</a>
</noscript>
使用Javascript:
var url = document.getElementById('formRef').getAttribute("href");
document.getElementById('formRef')
.setAttribute('href', encodeURI(url + '?referrer=' + window.location.href.slice(window.location.href.lastIndexOf('/') + 1)));
关于“登陆页面”
HTML:
<a id="landingPage" target="_blank" title="Click Here" href="https://myform.com/forms/land_discount">
使用Javascript:
var href = document.getElementById('landingPage').getAttribute('href');
if(window.location.href.indexOf('referrer=') > -1){
document.getElementById('landingPage').setAttribute('href', encodeURI(href + window.location.href.slice(window.location.href.indexOf('?referrer='))));
}