日期:2014-05-17  浏览次数:20508 次

thinkphp框架一些小疑问
我在用thinkphp的时候,比如验证完用户的用户名后,我想弹出一个窗口提示登录失败,然后重新display这个模版

那么我会这么写

echo "<script>alert('新产品入库成功')</script>";
$this->display('XXX');

但是这样会导致XXX的css样式加载失败,我的朋友说是因为display前面不能有输出。
请问大家碰到这样的情况怎么解决呢?
我所知道的能使用$this->success('ok'),但是除了内置的success,还有什么方法能放防止display的时候不会使样式表失效呢?或者有什么替代的方法呢?

------解决方案--------------------
如果不用自带的跳转
1.可以将登陆方法,与登陆校验方法拆分。不过会一个方法。
2.可以直接在页面用ajax调用返回错误参数,提示错误

拙见,仅供参考
------解决方案--------------------
同上,
直接在页面ajax提交判断返回值即可。
------解决方案--------------------
模板页面使用ajax提交到php的action中,根据action的返回值在js中控制的html(包含样式)的显示。
------解决方案--------------------
thinkphp 已提供了此类对话框代码,你只要调用就可以了
你可以使用它的自动验证功能,并不需要把精力放在这个上面
如果你喜欢自己书写代码,那就不要用 thinkphp