如何动态设置单选按钮'checked'属性。

时间:2013-07-28 20:44:19

标签: joomla radio-button components field checked

我开发了一个Joomla 2.5组件,它完全按照我的要求进行ALMOST。我有一个包含带有2个单选按钮的字段集的表单(“am”和“pm”)。我一直无法弄清楚如何根据其他信息设置相应按钮的“已检查”属性。在定义表单字段的xml文件中设置默认值是微不足道的,但我不知道如何动态地执行此操作。

有可能吗?我是否遗漏了文档中可以解释如何执行此操作的内容?

1 个答案:

答案 0 :(得分:1)

如果您从视图中加载表单:在view.html的display()方法中,您将加载表单:

$this->form     = $this->get('Form');

这是调用一个模型,它反过来扩展了joomla.application.component.modelform;它的getForm方法加载表单:

$form = $this->loadForm('com_yourcomp.model', ...

这是我从你的描述中收集到的。如果不是这种情况,您可能需要在加载表单后立即移动下面的建议代码:这是允许您设置字段值的完整代码段:

/// Load the form from the model:

$this->form     = $this->get('Form');

    // Check for errors.
    if (count($errors = $this->get('Errors'))) {
        throw new Exception(implode("\n", $errors));
    }

 //... some logic ...

    $this->form->setValue('businessid',null,$businessId);

    $this->form->setFieldAttribute( 'businessid', 'readonly', 'true' );