基于URL参数填充隐藏的输入表单域

问题描述:

我有一个ppc登陆页面,我想根据URL参数更改表单域的隐藏值。基于URL参数填充隐藏的输入表单域

领域

<input id="Campaign_ID" name="Campaign_ID" type="hidden" value="7g012455dv5441vdf"> 

的URL会是这样的mysite.com/?campaignidvalue= 7g012455dv5441vdf

会有其他方面的 “价值” 这也是基于URL参数,所以它必须将“输入ID”(或名称)与该特定值相关联。

+0

你可以使用PHP吗? – 2014-11-03 19:59:55

+0

是的,我必须检查它不会破坏url参数中的任何内容 – drm930 2014-11-03 20:01:48

+0

只检查了其他所有工具在.php和html中仍然有效,因此对于PHP – drm930 2014-11-03 20:04:28

编辑:我的代码有错误。

PHP将是最简单的!

<?php  
     if(!empty($_GET['campaignidvalue'])) 
     {  
      echo '<input id="Campaign_ID" name="Campaign_ID" type="hidden" value="'. $_GET['campaignidvalue'].'"/>'; 
     } 

?> 

该块将检查值是否传入GET参数,然后将其回显到隐藏的表单字段中。

第一部分:

if(!empty($_GET['campaignidvalue'])) 

正在检查,看看是否被传递了一个名为CAMPAIGN_ID参数。

所以你的网址:

mysite.com/?campaignidvalue=7g012455dv5441vdf

将使码继续,因为它不是空的。

本节是实际在页面上显示它的部分。

echo '<input id="Campaign_ID" name="Campaign_ID" type="hidden" value="'. $_GET['campaignidvalue'].'"/>'; 

如果您查看HTML页面的源代码,你会看到

+0

这不会将url参数拖入隐藏的表单域 – drm930 2014-11-03 20:23:47

+0

我可以编辑它以提供更多细节,但它是有效的代码。 – 2014-11-03 20:28:06

+0

@JoeSwindell实际上它看起来像上面回应的内容不是有效的HTML,因为输入没有被正确关闭。 – pmahomme 2014-11-03 20:33:00

通过使用该功能:

function getParameterByName(name) { 
    name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]"); 
    var regexS = "[\\?&]" + name + "=([^&#]*)"; 
    var regex = new RegExp(regexS); 
    var results = regex.exec(window.location.search); 

    if(results == null) { 
     return ""; 
    } else { 
     return decodeURIComponent(results[1]); 
    } 
} 

你就可以得到任何URL参数按名称如下:

var cid = getParameterByName(campaignidvalue); 

然后,一旦你有了值,你可以使用jQuery来设置它,如下所示:

$(function() { 
    $("#Campaign_ID").val(cid); 
}); 
+0

我用这样的东西为我的电话号码 – drm930 2014-11-03 20:57:04

+0

不知道我是否结合了这两个功能?我会问另一个关于它的问题 – drm930 2014-11-03 20:58:20

+0

好的,是的,我从3天前关于GetURLParameter()的最后一个问题中看到了这一点。在上面使用该函数而不是我的,然后,一旦DOM被加载,使用jQuery来使用上面提到的.val()函数设置输入字段的值。 – pmahomme 2014-11-03 21:14:48