YII:如何将参数列表从js传递到控制器,并通过传递另一个列表来调用新视图
YII: How to pass list of parameters from js to controller and call new view by passing another list?
我是yii的新手。我试图在"点击"按钮的情况下将参数列表从js传递到我的控制器
我的代码是(在名为"studentReport"的视图中):
echo CHtml::submitButton('post' ,array('onclick'=>'js:passParams()', 'type' => 'POST',
,'name' => 'approveBtn'));
我的js代码在同一个表单中:
function passParams(){
var selctedbox = [];
for(var i=0; i<fields.length; i++){
selctedbox .push(fields[i].value);
}
$.post( <?php echo "'" . $this->createUrl('student/post') ."'" ; ?>,
{ idList: selctedbox } );
}
我的控制器代码是:
public function actionPost()
{
$newList= array();
$idListe=$_POST;
foreach ($idListe['idList'] as $value) {
$newList[]=$value;
}
$this->render('_compose',array('newList'=>$newList,'model'=>$model));
}
在这里,我想将我的值列表传递给action actionPost()
我不想在url中显示传递的参数,也不想用控制器传递的参数打开一个新的视图
我该怎么做?
尝试以下代码:
<?php echo CHtml::Button('SUBMIT',array('onclick'=>'passParams();')); ?>
<script type="text/javascript">
function passParams(){
var data=$("#formID").serialize();
$.ajax({
type: 'POST',
url: '<?php echo Yii::app()->createAbsoluteUrl("student/post"); ?>',
data:data,
success:function(data){
alert(data);
},
error: function(data) { // if error occured
alert("Error occured.please try again");
alert(data);
}
});
}
</script>
您也可以使用ajaxsubmit按钮。
<?php
echo CHtml::ajaxSubmitButton ('Create','default/create',
array(
'data'=>'js:$("#test-form").serialize()',
'method'=>'post' ,
'success' => 'function(html) {
if(html=="success"){
window.location="";
}else{
jQuery("#errorSummary").html(html)
}}',
),array('class'=>'test') );
?>
使用ajax Jquery Post
function passParams(){
var selectedbox = [];
selectedbox.push(fields[1,2,3]);
$.post( <?php echo "'" . $this->createUrl('student/post') ."'" ; ?>,
{ try: 'atry', postselectedbox: selectedbox } );
}
学生/后
var_dump($_POST) //so you can check the content
记住记法是
public function actionPost() // camelCase and not actionpost
{
// and for check add
var_dump($_POST)
$newList= array();
$idListe=$_POST;
.......
this->render('_compose',array('newList'=>$newList,'model'=>$model));
如果你的url是错误的(学生/学生)删除学生表单url
$.post( <?php echo "'" . $this->createUrl('post') ."'" ; ?>,
{ idList: selctedbox } );
相关文章:
- jQuery-将列表项的一个元素移动到同一项的另一个元素中+对我的列表中的每个项执行此操作
- 使用jquery从列表项中移除类,并将一个类添加到另一个列表项中
- 如何使用jquery将所选项目从一个下拉组列表(optgroup)移动到另一个下拉列表(optgroup)
- 在另一个下拉列表中的选择上切换下拉列表中选项的可见性
- 检查资源的id是否在ng重复中显示的另一个资源的id列表中
- 引导程序在单击另一个下拉列表时关闭下拉列表
- 如何删除元素列表中的类并添加到另一个元素 Jquery.
- 如何通过选择下拉列表中的选项从另一个 php 文件中获取数据
- 如何使用 asp.net 中的另一个下拉列表更改下拉列表选定的索引和可见性
- 如何填充下拉列表,从javascript中的另一个下拉列表中排除任何一个选项
- JavaScript,如何从一个列表中获取选定的值,同时在另一个列表中进行更改
- 选择“第一个下拉列表”以与另一个下拉列表的值相同
- 导航到另一个页面后,bootstrap下拉列表将不可用
- 如何在选择另一个列表框值时清除列表框值
- 使用jquery如何自动删除下拉列表中的第一个空白选项(如果它依赖于另一个选项)
- 在PHP中将下拉选择列表的内容从一个表单传递到另一个表单
- 如何根据另一个下拉列表的选择来填充多个下拉列表
- 如何从另一个下拉列表中隐藏选择基于下拉列表的值
- 根据另一个字段选择获取新值后更新下拉列表内容
- Dropdown基于jsp Struts中的另一个下拉列表