使用javascript onchange下拉不起作用

时间:2014-01-26 04:28:25

标签: javascript php jquery mysql

我有一个简单的下拉菜单,我希望如果用户选择“STUDENT”,它将显示来自mysql的学生数据。但页面保持不变(它显示“学生”一秒钟并返回原始页面),这不起作用。有人可以请帮助。

以下是我的代码:

<th width="20%">View&nbsp;Type:&nbsp;&nbsp;&nbsp;&nbsp;
            <form action="index.php" method="post" id="form1">
            <select  name="value1" onchange="document.forms.form1.submit();">
                    <option value="all">All('.$count.')</option>
                    <option value="student">STUDENT('.$stucount.')</option>
                    <option value="faculty">FACULTY('.$facount.')</option>
               </select>  

 </form>       
    </tr>
';  

2 个答案:

答案 0 :(得分:0)

试试这个:

<select  name="value1" onchange="this.form.submit()">

所有$_post都应为$_POST

$_POST是一个超级全局变量,php中的所有变量都区分大小写。

在您的选项中设置发布数据并检查发布数据并设置选择一个选项。 试试这个:

<select  name="value1" onchange="this.form.submit()">
            <option <?php echo (isset($_POST['value1']) && $_POST['value1'] == 'all')? 'selected="selected"' :  ''; ?> value="all">All('.$count.')</option>
            <option <?php echo (isset($_POST['value1']) && $_POST['value1'] == 'student')? 'selected="selected"' :  ''; ?>  value="student">STUDENT('.$stucount.')</option>
            <option <?php echo (isset($_POST['value1']) && $_POST['value1'] == 'faculty')? 'selected="selected"' :  ''; ?> value="faculty">FACULTY('.$facount.')</option>
</select>

答案 1 :(得分:0)

除了Awlad发布的答案之外,请尝试这是第二个问题。顺便说一句,你的代码并不完整,所以在你回复上面的表格之前,请把它放在:

$value = (isset($_POST['value1'])) ? $_POST['value1'] : '';

并替换为:

<th width="20%">View&nbsp;Type:&nbsp;&nbsp;&nbsp;&nbsp;
            <form action="index.php" method="post" id="form1">
            <select  name="value1" onchange="document.forms.form1.submit();">
                    <option value="all"'.($value=="all"?"selected":"").'>All('.$count.')</option>
                    <option value="student"'.($value=="student"?"selected":"").'>STUDENT('.$stucount.')</option>
                    <option value="faculty"'.($value=="faculty"?"selected":"").'>FACULTY('.$facount.')</option>
               </select>  

 </form>       
    </tr>
'; 

$value保存发送的POST值,一旦您点击下拉列表并根据该值,将选择相应的选项。