我有一个表单元素,它有一个onchange监听器,通过ajax触发更新另一个元素。
但是,我希望ajax post数据包含两个表单元素,而不仅仅是下面显示的那个($ data)。
我试图将我想要序列化的两个元素放在他们自己的嵌套形式中,它会发布两个元素的值,但是因为这个新表单嵌套在主页面形式cakephp中,所以在提交时忽略这些元素主页表格。
$data = $this->Js->get('#Reviewevent'.$index.'score')->serializeForm(array(
'isForm' => true,
'inline' => true
));
$this->Js->get('#Reviewevent'.$index.'score')->event('change', $this->Js->request(array(
'controller'=>'events',
'action'=>'getEventDescription'
),
array(
'update'=>'#'.$index.'Description',
'async' => true,
'method' => 'post',
'dataExpression'=> true ,
'data'=> $data
)
));
答案 0 :(得分:1)
原来你可以用jquery序列化div,你不需要它作为一个表单。我只是将我希望在ajax请求中发送的两个元素放在div而不是嵌套形式中,并且它工作正常。
$data = $this->Js->get('#'.$index.'ThisDivHasTwoFormElementsInIt')->serializeForm(array(
'isForm' => true,
'inline' => true
));