我正在构建一个后端组件 (1.6/1.7/2.5),我需要将另一个 View 中的变量传递到新记录中的字段中。变量传递工作正常。

我的问题是使用 getInput()。

首先,不同的文档页面具有不同数量和格式的参数 - 令人困惑!例如:

http://docs.joomla.org/API16:JForm/getInput : getInput($name, $group= '_default', $formControl= '_default', $groupControl= '_default', $value=null)
对比

http://docs.joomla.org/JForm::getInput/1.6 :

public function getInput (
    $name
    $group=null
    $value=null
)

问题:

我只需要传递一个变量作为默认值,例如:
echo $this->form->getInput('id', $value=$this->userID );?>
上面的代码使输入字段消失。如果我取出 $value=$this->userID 输入字段会显示出来,但显然没有任何默认值。我也试过:
$value=$this->userID;
echo $this->form->getInput('id', $value );

同样的问题,输入字段消失了。我尝试了一些其他变体,但基本上如果我尝试在 getInput() 中放入其他任何内容,它就不起作用,也找不到任何关于如何使用这些其他参数的好的工作示例。

我究竟做错了什么?

谢谢!

最佳答案

根据 the source ,这是正确的 API:

getInput($name, $group = null, $value = null)
getInput() 只是调用 getField() :
getField($name, $group = null, $value = null)

这意味着您应该这样做以设置默认值:
echo $this->form->getInput('id', null, $this->userID ); // Returns the $field->input String

或者:
$field = $this->form->getField('id', null, $this->userID ); // Returns the JFormField object

关于php - Joomla:将变量传递给 getInput(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10492212/

10-10 11:02