我是yii的新手。我想在点击的情况下将一个参数列表从js传递给我的控制器'一个按钮。 我的代码是(在名为' ostan' in url:http://localhost/web/site/中的视图):
var url ='http://localhost/web/';
$(document).ready(function(){
$("#btn").click(function(){
var vname = $("#name").val();
var vemail = $("#email").val();
if(vname=='' && vemail==''){
alert("Please fill out the form");
}else if(vname=='' && vemail!==''){
alert('Name field is required')
}else if(vemail=='' && vname!==''){
alert('Email field is required')
}else{
$.post(url+"Category/Gett",{name:vname,email:vemail},function(response,status){
alert("*----Received Data----*\n\nResponse : " + response+"\n\nStatus : " + status);
$("#form")[0].reset();
});
}
});
});

<form id="form" method="post">
<div id="namediv"><label>Name</label>
<input type="text" name="name" id="name" placeholder="Name"/><br></div>
<div id="emaildiv"><label>Email</label>
<input type="text" name="email" id="email" placeholder="Email"/></div>
<button id="btn">Send Data</button>
</form>
&#13;
控制器代码:
public function actionGett()
{
$name = $_POST["name"];
$email = $_POST["email"];
echo "Welcome ". $name ."!";
}
答案 0 :(得分:0)
假设您的功能actionGett()
位于CategoryController
课程中,您应该将表单发布到url+"category/gett"
而不是url+"Category/Gett"
。有关Yii2如何从控制器,操作,模块等创建路由的更多信息here。