使用MySQL / PHP生成单选按钮
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用MySQL / PHP生成单选按钮相关的知识,希望对你有一定的参考价值。
我正在尝试使用php生成单选按钮,但有两个问题。我正在尝试使用以下代码生成它们,但提出了两个单独的问题:
echo "<input type='radio' name='colour' value='" . $row['colName'] . "'
onclick='findSpec('" . $row['colName'] . "')'>" . $row['colRef'] . " " . $row['colName'];
首先,生成的单选按钮将显示在页面上,如下所示:
<input type="radio" name="colour" value="Straw" onclick="findSpec(" straw')'="">
Shadow Content (User Agent) = $0
</input>
我曾尝试在标题后添加一个单独的标签以关闭输入,但仍会在代码中插入伪造的标签(使用Safari / Firefox,这两个问题均同时出现。这也意味着我无法设置样式单选按钮。
另一个问题是事件处理程序。如果我取出参数,它可以正常工作,但是如果按上述方式插入,则会出现错误:
SyntaxError: Unexpected token ''
我在页面上注意到,单选按钮上的引号似乎未正确显示,我不确定这是否是问题的一部分。
我确定我在做这件事很愚蠢,但是我不知道该怎么办!任何帮助,将不胜感激。
谢谢克里斯
1),您需要使用/>
关闭输入标签-这意味着它是单个标签元素。标题不是标题的一部分-如果您希望将标题与单选按钮在语义上相关联,则可以将其单独包装在<label>
中(或者甚至在标题和收音机之间包裹一个标签,有时这样做)。
2)我个人不会使用内联事件处理程序-尽可能通过addEventListener
使用不引人注目的JS事件处理程序。通常认为,这是编写此类代码的一种更整洁,更可维护的方法,因为它可以使代码和标记之间保持更好的分离。除了其他以外,它还使您无法纠缠onclick属性内的引号转义,这就是造成您的问题的原因。
onclick='findSpec(\"" . $row['colName'] . "\")' />"
应该解决问题,如果您真的想那样做的话。
这将导致有效的输出,例如
<input type='radio' name='colour' value='x' onclick='findSpec("x")' />
实时演示:http://sandbox.onlinephpfunctions.com/code/8d6a10416528fa3b9fc76544a7e1fff5494f188d
对于“ onlick”,连接问题,引号未正确完成,
这是建议,而不是回显html元素,您可以选择简单的html并在其中绑定php参数,例如
<input type='radio' name='colour' value="<?=$row['colName']; ?>" onclick='findSpec("<?=$row['colName'];?>")'> <?=$row['colRef'] ." " . $row['colName'] ?>
以上是关于使用MySQL / PHP生成单选按钮的主要内容,如果未能解决你的问题,请参考以下文章
使用 jQuery、PHP 和 MySQL 为单选按钮加载 JSON 数据
使用 jQuery、PHP 和 MySQL 为单选按钮加载 JSON 数据