thinkphp 5.0.10 ajax后台代码不执行

cjq003 2017-12-11 03:25:42
thinkphp 5.0.10 ajax后台代码不执行

application/home/view/register/index.html代码:


<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf8"/>
<link rel="stylesheet" type="text/css" href="http://cdn.amazeui.org/amazeui/2.7.2/css/amazeui.min.css" media="all" />
<script src="http://code.jquery.com/jquery-2.1.3.min.js"></script>
<script type="text/javascript" src="http://cdn.amazeui.org/amazeui/2.7.2/js/amazeui.min.js"></script>
<script type="text/javascript" src="http://cdn.amazeui.org/amazeui/2.7.2/js/amazeui.widgets.helper.min.js"></script>
<script language="javascript">
function IsTel(Tel){
var re=new RegExp(/^((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)$/);
var retu=Tel.match(re);
if(retu){
return true;
}else{
return false;
}
}

$(document).ready(function () {

$("#send").click(function(){
if(!IsTel($("#mobile").val())){
alert(" 请填入正确的手机号! ");
}else{
alert(' ok1 ');
$.ajax({
type: "POST",
url: "{url:('register/send')}", // "/home/register/send" "{url:('send')}" // 郁闷,这三种写法都不行!
data: {mobile:$("#mobile").val()},
dataType: 'html',
success: function(result) {
var ary = JSON.parse(result);
// alert(ary);
if(ary['ok']=='ok'){
alert(ary['info']);
}else{
alert(ary['info']);
}
}
});
}
});
});
</script>
</head>
<body>
<form id="form1">
<div class="am-g am-g-fixed head am-margin-top-sm">
<img src="/static/image/share/logo.png" />
</div>
<div class="am-g am-g-fixed message_0 am-margin-top-xs">
<div class="am-u-sm-4"><h1 class="am-align-right">手机注册</h1></div>
</div>
<div class="am-g am-g-fixed message_0 am-margin-top-xs">
<div class="am-u-sm-4"><select><option>+86</option></select></div>
<div class="am-u-sm-7"><input type="text" name="mobile" id="mobile" class="am-form"/></div>
</div>
<div class="am-g am-g-fixed message_0 am-margin-top-xs">
<div class="am-u-sm-4"><input type="text" class="am-form" name="sms_code_usr" id="sms_code_usr" placeholder="验证码"/></div>
<div class="am-u-sm-7"><button type="button" id="send" class="am-form">发送验证码</button></div>
</div>
<div class="am-g am-g-fixed regiseter">
<div class="am-center">
<button class="am-btn am-btn-danger am-u-11" type="button" id="submit">注册</button>
</div>
</div>
</form>
</body>
</html>


\application\home\controller\Register.php 代码:


<?php

namespace app\home\Controller;
use think\Controller;
use think\Request;
use think\Db;
use think\Url;

error_reporting(0);

/**
* 分享获得奖励
*/
class Register extends Controller{
public function _initialize(){
parent::_initialize();
}

public function index(){
if(!$this->request->isPost()){
return $this->fetch();
}
}

public function send(){
file_put_contents("cjq.txt", ‘ ok ’ ,FILE_APPEND);
... ...
}


点击“发送验证码”按钮 alert('ok'); 有弹出,但是后台代码 send() 不知为何没执行,第一行写日志就没执行!
这是为什么呢?请不吝赐教!

...全文
489 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
url应该是 url:"/Register/send"
小爷吃饭 2017-12-11
  • 打赏
  • 举报
回复
做java的不是很了解Php,
1、是不是进到后台方法里了,如果进到后台方法,方法是否有异常终止执行了,如果正常执行了,是否要返回json数据或者return null之类的。
2、没进去,是前台js问题还是后台代码问题,或者动作名和方法名没匹配上
3、前台jquery引入是否正确,但是正确弹出alert了,引入应该没问题。
Mechnaic 2017-12-11
  • 打赏
  • 举报
回复
都弹出 ok 了,说明请求成功了 那怎么验证呢? 请把你的 send() 方法写上返回值 比如

exit(json_encode(array('success' => true, 'ary' => array('info' => 'zhangsan'))));
cjq003 2017-12-11
  • 打赏
  • 举报
回复



谢谢!可是没有定位到后台的 send方法,
  • 打赏
  • 举报
回复
你试试把地址存在js常量中,在把常量放进去

20,359

社区成员

发帖
与我相关
我的任务
社区描述
“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页。
phpphpstorm 技术论坛(原bbs)
社区管理员
  • 开源资源社区
  • phpstory
  • xuzuning
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧