0
我想在驗證表單後調用Symfony中的javascript函數,並且它是無效的。我可以在哪裏調用這個功能?如何在Symfony中調用javascript函數如果表單無效
我想在驗證表單後調用Symfony中的javascript函數,並且它是無效的。我可以在哪裏調用這個功能?如何在Symfony中調用javascript函數如果表單無效
您需要從您的視圖撥打電話。你想要做什麼取決於你試圖達到的目標。
例如:
public function executeFormSubmitAction(sfWebRequest $request)
{
$this->form = new MyForm();
$this->form->bind($request->getParamter($$this->form->getName());
$this->valid = null;
if($this->form->isValid())
{
// do stuff with values
$this->valid = true;
}
else
{
$this->valid = false;
}
}
然後在您的視圖:
<?php if($valid === true): ?>
Thanks!
<?php else: ?>
<?php echo $form; ?>
<?php if(false === $valid): ?>
<!-- your javascript call and related stuff -->
<?php endif; ?>
<?php endif; ?>
如果沒有爲$valid
每個條件的觀點完全不同的結構,那麼你可能想用實際工作中放所有這些在局部區域中,然後在條件內使用include_partial
,或者您可以使用單獨的視圖模板並在您的動作中使用setTemplate
來渲染正確的一個......或者如果它們非常複雜並且需要特殊的日誌您可以使用forward
並完全分開操作。或者,如果這是一個ajax提交,您可以返回json而不是html,然後執行您的js函數作爲回調的一部分 - 檢查返回的json是否包含標記驗證結果的變量。
它真的取決於你。