此 脚本 已经可以使用,但是我想知道是否可以仅在“ /”(“ 斜线)。
我的市场营销活动在“ /”知道用户来自哪里之后添加了不同的参数,例如:XV-MEL-OM-REVHL-X-X-POP-X-X。
此FORM是一个POPUP,我需要在“ /”后的“隐藏”输入中复制参数,以了解用户来自何处。
脚本:
<script type="text/javascript">
function Copy()
{
var Url = document.getElementById("paste-box");
Url.value = window.location.href;
Url.focus();
Url.select();
document.execCommand("Copy");
}
HTML:
<form action="https://ws.inversapub.com/subscribe" method="POST" target="hiddenFrame">
<input name="emailAddress" type="email" required="" oninput="this.setCustomValidity('')" oninvalid="this.setCustomValidity('Preencha um endereço de e-mail válido.')" placeholder="Coloque seu e-mail aqui" class="input-email-popup">
<input type="submit" value="QUERO DOBRAR MEU DINHEIRO AINDA ESTE ANO" onclick="Copy();" class="btn-submit-popup om-trigger-conversion">
<input type="hidden" name="sourceId" id="paste-box" value="XV-MEL-OM-REVHL-X-X-POP-X-X">
<input name="listCode" type="hidden" value="inv_hotlist_revhl"/>
<input name="redirect" type="hidden" value="#" />
<input name="email_page" type="hidden" value="inv_welcome_revhl"/>
</form>
我的网址是:http://lp.inversapub.com/teste-lp-optin/ 它仅复制/ teste-lp-option /
顺便说一句,如果在“ /”后面没什么,我是否无法添加参数“ XV-MEL-OM-REVHL-X-X-POP-X-X”?
哈斯塔Dhana 解决方案正在运行!但是,如果在“ /”之后没什么,我需要添加参数“ XV-MEL-OM-REVHL-X-X-POP-X-X”
答案 0 :(得分:1)
我认为您正在寻找Location API的location.pathname
属性。
您的示例代码:
function Copy()
{
var Url = document.getElementById("paste-box");
Url.value = window.location.pathname;
Url.focus();
Url.select();
document.execCommand("Copy");
}
编辑:
要添加默认参数,您可以使用以下正则表达式测试位置:
function Copy()
{
var Url = document.getElementById("paste-box");
Url.value = window.location.pathname + (/\/$/.test(location.pathname) ? "XV-MEL-OM-REVHL-X-X-POP-X-X" : "");
Url.focus();
Url.select();
document.execCommand("Copy");
}
答案 1 :(得分:0)
您可以使用window.location.pathname
代替window.location.href
来仅使用URL的路径部分。如果您需要/
之后的所有内容(例如GET参数和哈希值),则可以获取URL并删除原始部分:
window.location.href // http://example.com/path?get=value#bang
window.location.origin // http://example.com
window.location.href.slice(window.location.origin.length) // /path?get=value#bang
如果要插入整个URL但仅复制其中一部分,则可以查看selectionStart
和selectionEnd
属性。这是一个不错的评论:https://stackoverflow.com/a/3085656/3641734。
答案 2 :(得分:0)
您可以使用lastIndexOf()
函数在URL中找到/
字符的最后一部分:
function Copy()
{
var Url = document.getElementById("paste-box");
Url.value = window.location.href.substr(window.location.href.lastIndexOf('/') + 1);
Url.focus();
Url.select();
document.execCommand("Copy");
}