Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在我的下一个应用程序中,我想通过 AJAX 将 CActiveForms 动态加载到其他 CActiveForms 中。
因此,我创建了不同的表单视图,如下所示:
$form = $this->beginWidget('CActiveForm', [...]
但它总是呈现标签。这导致嵌套形式:
<form id="form1"> <form id="form2"> </form> </form>
如何防止 CActiveForm 为 form2 呈现表单标签?
我认为CActiveForms 本身不可能。但是,您可以创建自己的小部件,它继承自它。然后就可以重写init()andrun()方法,echo CHtml::endForm();去掉340echo CHtml::beginForm行和328行的on。
CActiveForm
init()
run()
echo CHtml::endForm();
echo CHtml::beginForm
但是,您的结果可能是混合的,很多 Javascript 和样式等依赖于具有某些设置的父表单等。