【问题标题】:populate hidden input form fields based on URLparameters根据 URL 参数填充隐藏的输入表单字段
【发布时间】:2014-11-03 19:57:27
【问题描述】:

我有一个 ppc 登录页面,我想根据 URL 参数更改表单字段的隐藏值。

领域

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

URL 类似于 mysite.com/?campaignidvalue=7g012455dv5441vdf

还有其他基于 URL 参数的字段“值”,因此它必须将“输入 id”(或名称)与该特定值联系起来。

【问题讨论】:

  • 是的,我必须检查它不会破坏 url 参数中的任何内容
  • 刚刚检查了其他所有内容在 .php 与 html 中仍然有效,所以对 php 来说是的
  • 为了澄清起见,这是否与 Java 有关?如果不是,请移除标签,以免订阅 Java 标签的用户感到困惑并提供 Java 答案。
  • 对 java / jquery 是的 - 建议使用 php 但不起作用

标签: java javascript php jquery


【解决方案1】:

编辑:我的代码中有错误。

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 页面的源代码,您会看到

【讨论】:

  • 这不会将 url 参数拉入隐藏表单字段
  • 我可以对其进行编辑以提供更多详细信息,但这样做是有效的代码。
  • @JoeSwindell 实际上看起来您在上面回显的内容不是有效的 HTML,因为输入未正确关闭。
  • @mikehomme 你是对的,我刚刚发现了那个错误。
【解决方案2】:

通过使用这个函数:

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);
});

【讨论】:

  • 我的电话号码是这样的
  • 不确定我是否结合了这两个功能?我会问另一个问题
  • 好的,是的,我从您 3 天前关于 GetURLParameter() 的最后一个问题中看到了这一点。使用上面的那个函数代替我的函数,然后,一旦加载了 DOM,使用 jQuery 使用我上面提到的 .val() 函数设置输入字段的值。
猜你喜欢
  • 1970-01-01
  • 2018-02-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-22
  • 2018-01-17
  • 1970-01-01
相关资源
最近更新 更多