在jquery ajax 发送的参数,我想用中括号,怎么办?

$.post("<?php echo CHtml::normalizeUrl(array(’/web/voteType/create’)); ?>", {VoteType[name]:voteType_name.val()},

这样报错

$.post("<?php echo CHtml::normalizeUrl(array(’/web/voteType/create’)); ?>", {name:voteType_name.val()},

这样正常!

如果用第一种方法,则代码修改少很多,代码更简洁。所以想要第一种方法,兼容yii生成的代码。

加上引号?我不确定。

$.post("<?php echo CHtml::normalizeUrl(array(’/web/voteType/create’)); ?>", {VoteType[name]:voteType_name.val()},

后面传递进去的应该是名值对的形式 ,所以你第二种是正确的

你的意思可能是想用一个数组形式的名。但是按照json个事的定义来说,应该是不支持这种格式的。

用Jquery的serialize吧,它可以帮你搞定,呵呵!