我使用的是CGI Perl代码:
print <<EOF;
<table width=50% align='center'>
<tr>
<td align='right' width=40%>Sub Category: </td>
<td align='left' width=50%>
<select id='subcat' onchange="document.create_cont.submit();">
EOF
my $filename='SN_CatProduct.xml';
my $xs = XML::Simple->new();
my $config = $xs->XMLin($filename);
my $x = XML::Simple->new( ForceArray => 1);
#my $proc_config = $x->XMLin('SN_Procedures.xml');
my $last;
my $s_category = $config->{'category'}{'subcat'};
print "\n";
foreach my $key (sort (keys %{$s_category})){
#print "$s_category->{$key}{'sname'} <br>";
my $subcat_val=$s_category->{$key}{'sname'};
print "<option>".$subcat_val. "</option>";
$last=$key;
}
my $val=$q->param("subcat");
print "<p>".$val."</p>";
print <<EOF;
</select>
</td>
</tr>
</table>
EOF
刷新页面选项值时不保留。
请帮我这样做..
提前致谢。
答案 0 :(得分:1)
谢谢大家!!
我使用过cgi :: ajax模块。现在我的问题得到了重新解决。
答案 1 :(得分:0)
当您输出选项标签时,请测试您输出的标签的值是否与提交的表单数据中的值相匹配。如果是,请为其添加selected
属性。
如果您将选项值/标签存储在数组(hashrefs)中,那么您可能会发现这更容易实现,如果您为每个选项硬编码HTML。