根据上一页操作,在页面加载时执行某些操作

时间:2012-05-03 19:42:39

标签: php jquery

我正在构建一个关于wordpress的网站,我遇到了一个我不太确定如何解决的问题。

情况:

  1. 用户从一个页面上的<select>标记中进行选择并提交他们的选择
  2. 用户到达具有相同<select>的网页。当用户选择一个选项时,它会使用一点点jQuery显示与该选项对应的内容。
  3. -

    $('.result').hide();
    
    $('#servicearea').change(function() {
      $('.result').hide();
    
      var optionValue = $ (this).attr('value');
      $('#'+optionValue).show('fast');
    
    });
    

    问题:

    1. 我需要从第一页开始选择以转移到第二页然后运行此脚本。
    2. 解决方案:

      1. 我会说实话,我不知道从哪里开始,也许是饼干?我希望有一个jQuery类型的解决方案,因为我对jQuery感觉很舒服。
      2. 任何建议都将不胜感激。

2 个答案:

答案 0 :(得分:0)

javascript不知道你发布到页面的内容。

你可以把这个值放到php的javascript中,如下所示:

<script>
    doSomething(<?=$_POST['selected'?>);
</script>

或者您可以将其放入隐藏的表单字段

<input type="hidden" id="hiddenField" value="<?=$_POST['selected']?>">

并使用

捕获值
$('#hiddenField').val()

答案 1 :(得分:0)

隐藏的表单字段可以使用。但是,如果你决定改用PHP会话,take a look here.

从以上链接...

<?php
// page1.php

session_start();

echo 'Welcome to page #1';

$_SESSION['favcolor'] = 'green';
$_SESSION['animal']   = 'cat';
$_SESSION['time']     = time();

// Works if session cookie was accepted
echo '<br /><a href="page2.php">page 2</a>';

// Or maybe pass along the session id, if needed
echo '<br /><a href="page2.php?' . SID . '">page 2</a>';
?>

查看page1.php后,第二页page2.php将包含会话数据。 Read the session reference有关propagating session ids的信息,例如,它解释了常量SID的全部内容。

<?php
// page2.php

session_start();

echo 'Welcome to page #2<br />';

echo $_SESSION['favcolor']; // green
echo $_SESSION['animal'];   // cat
echo date('Y m d H:i:s', $_SESSION['time']);

// You may want to use SID here, like we did in page1.php
echo '<br /><a href="page1.php">page 1</a>';
?>

<强>更新

根据你的片段判断,我相信你会通过这样的方式设置会话变量:

<form action="" method="post">
<select type="select" name="servicearea" >
    <option value="option1">Option 1</option>
    <option value="option2">Option 2</option>
    <option value="option3">Option 3</option>
</select>
<input type="submit" name="Submit" value="Submit!" />
</form>

<?php
session_start();
if (isset($_POST['Submit'])) {
    $_SESSION['optionValue'] = $_POST['servicearea'];
}
echo $_SESSION['optionValue'];
?>