我是一名php程序员。我有一个图像评级页面,一旦选择并提交,它会显示带有单选按钮的图像,图像按钮值会转到表格。当我检索图像时,它们被正确呈现,但是他们没有显示之前的单选按钮评级选择。
我的问题是如何在将图像提取到浏览器中时保留最新的无线电选择。
答案 0 :(得分:3)
我不确定你的选择是什么,但它会是这样的;
<input type="radio" name="image_option" value="1"<?php $_POST['image_option'] == 1 ? ' checked="checked"'; ?> />
<input type="radio" name="image_option" value="2"<?php $_POST['image_option'] == 2 ? ' checked="checked"'; ?> />
<input type="radio" name="image_option" value="3"<?php $_POST['image_option'] == 3 ? ' checked="checked"'; ?> />
希望有所帮助。
答案 1 :(得分:1)
您必须为要选择的相应单选按钮设置“已选中”属性。
答案 2 :(得分:1)
如果您想要默认选择,请使用“已选中”。 如果你想检查重新发送选择按钮。然后在提交时间,在会话中存储单选按钮值,当浏览器在提交无线电值后获取请求,然后检索会话值并在先前的选择单选按钮上应用检查。
答案 3 :(得分:1)
你的问题是你需要:
数据库中要匹配的值
单选按钮本身的值
这将允许您:
将数据库值(DBV)与单选按钮值(RBV)进行比较,如果比较结果为真,则将其设置为选中。
以下变量为:
$ ar_rvbs =您要循环并检查存储的DBV的无线电报值数组(通常是字符串或布尔值)。
$ value =无线电报价值数组中每个项目的值
$ attrval =单选按钮的存储值。它不一定必须在数据库中。你可以使用post方法将它从一个页面传递到下一个页面。
$ checked =如果DBV在循环通过时与RBV匹配,则将设置为字符串“checked”,否则它只是一个空字符串。
function makeRadioSet($ar_rvbs,$attrval=[DBV] /*A*/
{
foreach ($ar_rvbs as $value)
{
$checked = ''; /*B*/
if ($attrval==$value) /*C*/
$checked = "checked"; /*D*/
echo '<input type="radio" name = "fieldname" value = "'.$value.'" '.$checked.'>';
}
}
/ A /将RBV列表作为数组传递,将DBV作为变量传递
/ B /设置检查为空字符串,因为这将是集合中所有单选按钮的默认值,但匹配DBV的单选按钮
/ C /将DBV与RBV阵列循环处理的当前RBV进行比较
/ D /如果步骤C的比较返回true,则使选中的字符串可用于插入输入元素
echo负责生成每个无线电设置选项,并确保匹配DBV的选项已在输入元素标签中“检查”
答案 4 :(得分:1)
您可以使用以下方法
@{
string MaleChecked = "";
string FemaleChecked = "";
if(@Model.Gender=="Male")
{
MaleChecked = "Checked";
}
else
{
FemaleChecked = "Checked";
}
}
如果使用表单
Male<input type="radio" name="Gender" id="rdoGender" value="Male" @MaleChecked>
Female<input type="radio" name="Gender" id="rdoGender1" value="Female" @FemaleChecked>
答案 5 :(得分:0)
重新加载页面后,您必须将选中的属性添加到您必须检查的单选按钮。 正确的语法是:
<input type="radio" name="foo" id="bar" value="1" checked="checked" />