Автоматически установить флажок в зависимости от значения страницы ссылки? - PullRequest
0 голосов
/ 20 мая 2011

Я работаю над формой регистрации в серии электронной почты, для которой необходимо предварительно установить флажок в зависимости от страницы, с которой приходит пользователь.

Похоже, что форма уже настроена для отслеживания того, с какой страницы идет пользователь, поскольку она содержит это:

<input type="hidden" name="referring_page" value="<?php if (isset($_POST['referring_page'])) { echo $_POST['referring_page']; } else { echo $_SERVER['HTTP_REFERER']; }?>" />

Все флажки выглядят так:

<div class="emailOption"><input type="checkbox" name="seo" id="seo" value="seo" /> SEO Series</div>
<div class="emailOption"><input type="checkbox" name="ppc" id="ppc" value="ppc" /> PPC Series</div>

Я хотел бы добавить атрибут checked = "yes" в один флажок в зависимости от URL-адреса ссылающейся страницы. Я новичок как в PHP, так и в jQuery, но сайт использует оба, поэтому любой из них будет работать для решения.

Большое спасибо за любую помощь!

Ответы [ 3 ]

2 голосов
/ 20 мая 2011

Я бы порекомендовал PHP, так как вы предварительно проверяете . То есть, нет никакой причины делать это с помощью JavaScript после загрузки страницы, если у вас уже есть логика и доступ к серверному коду.

Аналогично скрытому вводу:

<div class="emailOption">
  <input type="checkbox" name="seo" id="seo" value="seo"<?php echo (/*your logic goes here */) ? 'checked="checked"' : ''; ?>  /> SEO Series
</div>
0 голосов
/ 20 мая 2011

Предполагая, что "из URL" вы имеете в виду, что seo и ppc являются параметрами публикации, это то, что вам нужно:

<div class="emailOption"><input type="checkbox" name="seo" id="seo" value="seo" <?php echo (isset($_POST['seo']) ? 'checked' : '');?>/> SEO Series</div>
<div class="emailOption"><input type="checkbox" name="ppc" id="ppc" value="ppc" <?php echo (isset($_POST['ppc']) ? 'checked' : '');?>/> PPC Series</div>
0 голосов
/ 20 мая 2011

В этом случае вы можете использовать jQuery.

$('input').filter(function(){
  return $(this).attr('name') == "<?php echo $valueGoesHere; ?>";
}).attr('checked,' true);

Попробуй и расскажи мне о своем результате. :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...