2016-07-18 40 views
1

我正在尝试回显屏幕上用户从下拉菜单中选择的内容。因此,无论何时用户选择一个数字,它都会更新其下方的文本以显示他们选择的内容。这里是我下面的代码:如何回显用户下拉选择?

<html> 
<head> 
</head> 
<body> 
<label for="numbers"></label> 
<form action="drop.php"> 
    <select name="numbers"> 
    <option value="0">select number</option> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
    </select> 
    <br><br> 
    <input type="submit"> 
</form> 

<?php 

if(isset($_POST['numbers'])) 
{ 
    $numbers = $_POST['numbers']; 
    $error = "?"; 
    echo "<p>" . $numbers . "</p>"; 
} 
?> 
</body> 
</html> 

已更新的主要CODE

+1

这将更适合于JavaScript。您目前错过了'

'标记,您不需要提交按钮,但除非您想添加javascript'onchange'来提交表单,否则您应该包含一个。 – cmorrissey

+0

很酷,感谢您的信息。我会记住JS,但为此维护PHP,我添加了一个表单,其中action =“file.php”,并且我在后面包含了提交按钮,但在表单内。它似乎仍然没有工作。更新的代码在主体中,谢谢! – Egrodo

回答

1

我建议您阅读PHP的Dealing with Forms教程还研究了change event

为您的代码例如,我用“平变化”属性选择元件选择一个号码时,它会自动提交表单一起加入一个form element

<html> 
<head> 
</head> 
<body> 
<form action="<?php echo basename(__FILE__); ?>" method="post"> 
<label for="numbers">Numbers:</label> 
<select name="numbers" onchange="document.forms[0].submit();"> 
    <option value="0">select number</option> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
</select> 
<input type="submit"> 
</form> 

<?php 

if (array_key_exists('numbers', $_POST)) { 
    $numbers = $_POST['numbers']; 
    echo '<p>' . $numbers . '</p>'; 
} 
?> 

</body> 
</html> 
+0

这正是我所需要的,感谢您提供的信息和链接。我一定会通读这些内容并开始研究这一点。祝你有个美好的一天 – Egrodo

2

在表单声明中尝试method =“post”。或使用$ _GET而不是$ _POST ON drop.php

如果(isset($ _ POST [ '编号']))

1

Add方法= “POST” 的形式

<form action="drop.php" method="post"> 
+0

谢谢,没有意识到这一点! – Egrodo

相关问题