如何根据数据库查询结果禁用单选按钮?

时间:2014-09-17 13:03:42

标签: php jquery fuelphp

<?php foreach ($types_show as $size): ?>
    <td class='size_rdo'><?php echo Form::radio('radio_size', $value)?></td>
<?php endforeach;?>

这将显示一些单选按钮,我想将$value发送到php。如果DB中有值,则单选按钮可以,否则将其设置为禁用。

我在下面写了一些Pseudocode,感谢您的回答。

 $(':radio[name=radio_size]').each(function(){
        $.ajax({
            type: "GET",
            url: "/management/order/get_size",
            data: {radio_size:radio_size},
            cache: false,
            dataType: 'json',
            success: function(data) {
                if (data) {
                $(this).attr("disabled",true);
             }
            },
        });
    });

2 个答案:

答案 0 :(得分:0)

我不确定你是否真的想要为每个单选按钮调用ajax。最好做一个电话,然后循环检查每个电台......

无论如何,你必须通过$(this)

$(':radio[name=radio_size]').each(function(){
    var $this = $(this);
        $.ajax({
            type: "GET",
            url: "/management/order/get_size",
            data: {radio_size:radio_size},
            cache: false,
            dataType: 'json',
            success: function(data) {
                if (data) {
                $this.attr("disabled",true);
             }
            },
        });
    });

答案 1 :(得分:0)

我认为FuelPhp允许你在PHP中使用在Form帮助器上添加属性来实现它(我不知道这个框架,但它看起来像我知道的另一个框架see the documentation)。

<?php foreach ($types_show as $size): ?>
    <td class='size_rdo'>
        <?php if($value) // Here I don't understand what you want to test on your 
                         // condition, you must correct it depending of your needs
             // If the value is not good, then add the disabled attribut
             echo Form::radio('radio_size', $value, array('disabled'))?>
         else // If the value is the good one, just continue like you did
             echo Form::radio('radio_size', $value)?>
    </td>
<?php endforeach;?>

然后你不需要Javascript