thinkphp 中實用的三種檢視向控制器傳值得方法
阿新 • • 發佈:2019-01-02
首先用得最多的恐怕是url 傳值了吧
1.url傳值
<volist name="news" id="news"> <div class="newbox"> <!-- 另一種寫法 {:U('News/index?newsid'.$news['Article_ID'])} --> <a href="{:U('News/index',array('newsid'=>$news['Article_ID']))}"> </a> </div> </volist>
2.<form>表單傳值
只要把input放進form中點選div或者按鈕把form提交即可
提交事件<form action="{:U('Product/shousuo')}" id="forms"> <div class="header_input"> <input class="soso_input" type="text" name="keyword"/> <div onclick="shousuo()"> <img class="header_soso" src="__PUBLIC__/Home/pc/img/soso.jpg" alt="" /> </div> </div> </form>
function shousuo(){
$('#forms').submit();
}
3.ajax傳值
var msg_sender = $(".mail_sender").val();
var msg_text = $(".mail_text").val();
var msg_title = $(".mail_title").val();
var msg_code = $('.mail_code').val();
這是ajax的簡寫.post是傳輸型別,url是你要傳到哪裡,{}中的是你要傳輸的值,a:a的格式,data是ajax返回的資料都存在data這裡可以自己命名,sb。都可以你喜歡。var url = '{:U('About/mail_ajax')}'; $.post(url,{msg_sender:msg_sender,msg_text:msg_text,msg_title:msg_title,msg_code:msg_code,},function(data){ console.log(data); if(data == 1){ if (lang == 1) {alert("registration success") }else{ alert("傳送成功"); }; };
說完傳值還有個問題是
控制器如何接收呢
Thinkphp給了我們一個I方法,這不是L是I,
上的3種方法都可以用I獲取
如
I(‘a’),a是寫msg_sender:msg_sender,冒號前邊的,而冒號後面的是資料
實際看上面的例子
$newid=I('newid');
而表單獲取的話是寫input的name的值
$keyword = I('keyword');