[英]Grab referrer to parent in iFrame (different domain) form hidden field
我正在使用JavaScript在iFrame中加載表單,並將引薦來源網址添加到URL中,以將參數傳遞給iFrame(第1步),以在表單上填充隱藏字段(第2步)。
第1步工作正常,並產生類似以下內容:
http://www.parentdomain.com/parentpage/?refURL=http://www.somereferringURL.com/someRefpage/
第2步(我陷入困境)
function gup( grabREF ) { grabREF = grabREF.replace(/[\\[]/,"\\\\\\[").replace(/[\\]]/,"\\\\\\]"); var regexS = "[\\\\?&]"+grabREF+"=([^&#]*)"; var regex = new RegExp( regexS ); var results = regex.exec( window.location.href ); if( results == null ) return ""; else return results[1]; } var referrer = gup( 'refURL' ); function start() { var ref = document.getElementById('my-formfield-id');{ ref.value = referrer; } onload = start; }
這似乎(仍然)似乎是將父級作為引薦來源網址( http://www.parentdomain.com/parentpage/ ),並且(實際上)似乎是在URL字符串后附加了結束標記。 表單和父級位於不同的子域中。 我猜測罪魁禍首可能躺在這里:ref.value = Referrer;
有任何想法嗎?
我無法使其正常工作,因此我只能抓住iframe父級作為引薦來源網址,然后更改父頁面(並在iframe中嵌入相同的表單)以捕獲所需的不同廣告系列引薦來源網址。 我仍然可以像使用相同表格一樣將它們放在一個位置,只有一個父母(登錄頁面)並將推薦人傳遞給父母,這將是很好的選擇。
此代碼將執行以下操作:
<script type="text/javascript">
function getParameterByName(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
var refVAL = getParameterByName('refURL');
//document.write(refVAL);
function SetValue()
{
document.getElementById('my_hidden_formfield_id').value = refVAL;
//alert(document.getElementById('my_hidden_formfield_id').value);
}
</script>
感謝您的光臨。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.