我以前从未使用过 Javascript,但现在我在 Symfony-Project (Symfony 1.4) 中需要它,并且在添加代码以使其正常工作时遇到了一些问题:
我在模块“aktionLimit”中有一个模板(indexSuccess),其中显示了“Aktion”类的对象的变量值:
<p>Value1: <?php echo $aktion->getValue1() ?></p>
<p>Value2: <?php echo $aktion->getValue2() ?></p>
<p>Value3: <?php echo $aktion->getValue3() ?></p>
<?php include_partial('form', array('form' => $form)) ?>
这是执行索引:
$this->aktion = AktionlimitPeer::getByName($this->getUser()->getAttribute('aktion'));
$aktionParam = new Aktion();
$aktionParam->setName($this->aktion->getName());
$this->form = new AktionlimitForm(array(), array("aktion" => $aktionParam));
AktionLimitForm 如下所示:
$aktionForm = new AktionForm($this->getOption('aktion'), array("limit" => true));
$this->embedForm('Aktion', $aktionForm);
$this->widgetSchema['neuerWert']= new sfWidgetFormInputText();
嵌入的 AktionForm 只有一个元素(一个下拉框,其中包含“Aktion”对象的唯一名称):
$this->widgetSchema['name'] = new sfWidgetFormChoice(array('choices' => AktionPeer::getTypes()),array('onchange' => '???'));
每当用户在下拉框中选择另一个“aktion”时,我想在 executeIndex 中加载当前对象“aktion”(由名称引用)并在 indexSuccess 中显示其值(值 1-3)。(提交时会导致另一个动作。)
我需要一个在 onChange-Event 中调用 executeIndex 的函数。我可能必须在 web/js 文件夹中声明该函数,对吗?但是如何从表单中调用函数呢?以及如何在 JavaScript 函数中调用动作?
我希望你能理解我写的东西——今天我很难用英语解释这个问题:)有人可以帮忙吗?