oop-php中的下拉菜单
我试图创建一个简单的下拉菜单,用数字(0,1,2)作为值。 为了便于启动,我将选定值设置为数字2。没有错误出现, 下拉框存在,但未显示任何值。我做错了什么。请帮忙oop-php中的下拉菜单,php,oop,drop-down-menu,Php,Oop,Drop Down Menu,我试图创建一个简单的下拉菜单,用数字(0,1,2)作为值。 为了便于启动,我将选定值设置为数字2。没有错误出现, 下拉框存在,但未显示任何值。我做错了什么。请帮忙 <?php class pulldown { function setName($name) { $this->name = $name; } // sets name of //select field function setSelected($sel
<?php
class pulldown {
function setName($name) { $this->name = $name; } // sets name of
//select field
function setSelected($selected) { $this->setSelected=$selected; }
function showSelected() {
printf ("<select name='%s'>", $this->name);
foreach( $this->lookupTable as $key => $val )
{
if($this->selected == $key ){
echo "<option select='selected' value='$key'>$val</option>";
}else {
echo "<option value='$key'>$val</option>";
}
}
echo" </select>";
}
private $lookupTable;
private $selected;
private $name;
}
//////////////////////////////////////////////////
class numbers extends pulldown {
function __construct () {
$this->setName('numbers');
$this->setSelected("0");
///this are the numbers available to select
$this->lookupTable = Array (
"0" => "zero",
"1" => "one",
"2" => "two"
);
}
}
$mynumbers = new numbers();
$mynumbers->setSelected("2");
//$myresellers = new myresellers();
?>
<html>
<form action="pullDown.php" method="post">
<table width="1000" border="0" align="center">
<td>
<?php $mynumbers->showSelected(); ?>
</td>
</table>
</form>
您在setter中使用了错误的变量。您需要使用selected而不是setSelected
function setSelected($selected) { $this->selected = $selected; }
$this->setSelected=$selected;选定的私人美元代码>这里的变量名是错误的。我现在看到您使用了错误的HTML语法。请尝试使用selected=selected,而不是select=selected。这没有帮助。对不起。第三个错误是,你试图进入一个私人财产。更改私有$lookupTable;保护$lookupTable;