前端直接提交form表单的数据:$('#ftrForm').serialize()当使用jsonp时,使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替
前端直接提交form表单的数据:$('#ftrForm').serialize()当使用jsonp时,使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。
$.getJSON("http://www.test.com/index.php/topic/BlueCollar2016?"+$('#ftrForm').serialize()+"&callback=?", function(data) { if(data.id == -1){ alert("您还未登录,请先登录!"); } else { alert("留言成功!"); }});
后台php处理:
RequestUtils::strFilter('message','mobile','qq'); extract($_REQUEST, EXTR_SKIP); $message2 = iconv('utf-8','gbk',$message); $callback = $_GET['callback']; // 必须添加,否则前端success无法回调 if (!$_SESSION['userUserID']) { echo $callback.'('.json_encode(array ("id"=>"-1")).')'; exit; } $con = Propel::getConnection(); $time = strtotime("now"); $sql = "insert into t_card_free_apply (flag, work, mobile, name, select1, save_time) values ('BlueCollar2016','" .$message2."', '".$mobile."' ,'" .$qq."','" .$_SESSION['userUserID']."',$time)"; $rs1 = $con->executeQuery($sql); echo $callback.'('.json_encode(array ("id"=>"1")).')';//返回格式,必需 exit;