在Javascript中将值附加到Form上的URL

时间:2016-08-26 04:13:32

标签: javascript php forms get

我在多个页面上有一个表单链接。当我点击页面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:

Discount Form

2 个答案:

答案 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='))));
}