我在这里遇到一些关于复选框的问题,如果可以通过在视图中使用此脚本来解决单选按钮
enter code here
<input type="radio" name="jk" value="L" <?php echo set_radio('myradio', 'L', ($detail->jk == "L") ? TRUE : FALSE ); ?> >L
<input type="radio" name="jk" value="P" <?php echo set_radio('myradio', 'P', ($detail->jk == "P") ? TRUE : FALSE ); ?>>P
但是对于复选框,为什么它不能通过使用此脚本来解决
enter code here
<input type="checkbox" name="hoby" value="Lari" <?php echo set_checkbox('hoby', '($detail->hoby=="Lari")'); ?> />Lari
<input type="checkbox" name="hoby" value="Berenang" <?php echo set_checkbox('hoby', '($detail->hoby=="Berenang")'); ?> />Berenang
我是Code Igniter的新人。
任何方式都非常感谢你的回答:D
答案 0 :(得分:0)
试试这个:
<input type="checkbox" name="hoby" value="Lari" <?php echo set_checkbox('hoby', 'Lari')'); ?> />Lari
<input type="checkbox" name="hoby" value="Berenang" <?php echo set_checkbox('hoby', 'Berenang'); ?> />Berenang
要完全理解这个概念,请在CodeIgniter中查看以下有关表单助手的教程:https://ellislab.com/codeigniter/user-guide/helpers/form_helper.html
编辑 - 1:
我必须说,这是一个非常不明确的问题。
我能从您的问题中了解到,您打算根据选中/取消选中复选框将varchar
值保存到数据库中???????好吧,我所知道的是,当您选中/取消选中复选框时,您只能保存{0}的boolean
或integer
值。
尝试使用javascript或jQuery。请将您的数据库列从varchar
更改为int
。复选框选中/取消选中时,您的php变量还应包含int
值,而不是string
。
这可能会有所帮助:
查看:
<input type="checkbox" id="hoby_l" value="1"
<?php
if ($hoby_Lary == 1)
{
?>
checked = "true"
<?php
}
?> onchange = "valueChanged()";
/>
<input type="checkbox" id="hoby_b" value="1"
<?php
if ($hoby_Berenang == 1)
{
?>
checked = "true"
<?php
}
?> onchange = "valueChanged()";
/>
JavaScript的:
function valueChanged()
{
if(document.getElementById('hoby_l').checked == 'true')
{
document.getElementById('hoby_b').checked == 'false';
return 1;
}
else
{
return 0;
}
if(document.getElementById('hoby_b').checked == 'true')
{
document.getElementById('hoby_l').checked == 'false';
return 1;
}
else
{
return 0;
}
}
诚恳的建议:在提问时你需要提高英语水平,否则社区很难帮助你。如果你无法正确解释你的问题,你怎么能期待帮助?
另一个真诚的建议:无论外观有多难,请不要试图避免使用用户指南。你现在还不明白它的重要性。但它将来会对你有很大的帮助。
答案 1 :(得分:0)
if((int) $checked == 1){//do what you want}
OR Try this
create one funciton in your model file like this
function get_checkbox_value($check) {
for($i = 0; $i <= 6; $i++) {
$result[$i] = '';
}
foreach($check as $chk) {
for($i = 0; $i <= 6; $i++) {
if(($i+1) == $chk['ID']) {
$result[$i] = 'checked';
continue;
}
}
}
return $result;
}
and your view file call function like this
<input type="checkbox" id="lari" name="hoby" value="2" <?php echo empty($check) ? '' : $check[1]; ?>/>