Ⅰ DWZ框架下打不开自己用百度地图API写的地图页面
找到解决方法了,估计是 dwz 框架需要加载的东西有点多,在使用 网络地图提供的 demo 直接用
var map = new BMap.Map("allmap"); 的方式加载地图,会出现未定义错误(请求的js还没有下来,已经调用方法了)。
解决方法是采用网络地图提供的异步加载方法。
function loadMapJs() {
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "http://api.map..com/api?v=2.0&ak=UPjLWesAvHLvpjeTGkXMbUk7&callback=init";
//中间的访问码改成自己的
document.body.appendChild(script);
}
function init() {
var map = new BMap.Map("allmap"); // 创建Map实例
var point = new BMap.Point(116.404, 39.915); // 创建点坐标
map.centerAndZoom(point, 15);
map.enableScrollWheelZoom(); //启用滚轮放大缩小
}
$(document).ready(function () {
loadMapJs();//异步加载地图
});
这样,在调用 var map = new BMap.Map("allmap"); // 创建Map实例
时,就能确保,请求的 js 已经获取到了。
亲测可用
Ⅱ Thinkphp整合dwz框架
ThinkPHP 3.2.3 + DWZ
改造ThinkPHP Json返回数据增加dwz框架需要的数据
修改ThinkPHP/Library/Think/Controller.class.php ajaxReturn方法
在ajaxReturn 方法开始位置添加 如下代码
//=======================
//DWZthinkPHP
//Author:www.yicix.com
//=======================
if($data['status']==1){$status=200;}
if($data['status']==0){$status=300;}
$data['statusCode']=$status;
$data['message']=$data['info'];
$data['navTabId']=$_REQUEST['navTabId'];
$data['callbackType']=$_REQUEST['callbackType'];
$data['forwardUrl']=$_REQUEST['forwardUrl'];
Ⅲ 权限管理系统前台用dwz写的后台用ss写的源码下载
首先需要重组下顺序:前台,后台,数据库|操作系统,服务器这样以“|”为分隔符将其分为两部分比较好理解。 前台:就是面向用户的,用户利用这个“前台”来查询需要的信息,他们只有“读”权限。就是说在前台里面他...
Ⅳ dwz是什么意思
DWZ富客户端框架(jQuery RIA framework)的三个创造人:
[北京]杜权(UI设计) [email protected]
[杭州]吴平(Ajax开发) [email protected]
[北京]张慧华(Ajax开发) [email protected]
他们拼音的首个字母拼起来就是DWZ啦
Ⅳ 求thinkphp+dwz(j-ui)+mongodb的分页实例,要代码,自己实在是整不明白了。
ThinkPHP自带有个比较好的分页功能,DWZ的框架很漂亮。怎么能在DWZ中使用ThinkPHP的分页呢?
思路有两种:
1.修改ThinkPHP分页输出,这个就比较麻烦了,要修改ThinkPHP的核心,不好。
2.修改DWZ,这个也不好,既然是用第三方的,改动最少的好。
分析问题:DWZ的分页主要是在连接那里用了一个“rel”的属性,而ThinkPHP没有。所以点击分页连接,不是在DWZ的标签中打开,而是在新的浏览器窗口中打开。
解决思路:只要想办法在ThinkPHP生成的分页连接中加入”rel”的属性就好了。把ThinkPHP的分页代码用一个固定id的<div>框住。然后用一小段JS定位到分页的连接,给连接加上rel属性。
所以有了以下比较干净和简便的做法:
在ThinkPHP的分页标签{$page}外面框一个固定id的<div>,我这里用thinkphp_page,html代码如下:
<div class=”panelBar” id=”thinkphp_page”>{$page}</div>
模板页加一段JS,如果你是直接在模板加,你可以设置“target”:”navTab” 中的navTab用你的当前框架的ID。这样分页就可以在当前框架页面打开,否则是新增框架页面。
$(document).ready(function(){
$(“#thinkphp_page a”).each(function(){
$(this).attr({ ”rel”:”", ”target”:”navTab” });
});
});
原来的想法是直接写在大框架中,这样就一劳永逸了。回来发现不行,一定要放在当前的模板中。囧。
后来吧代码装到一个js,需要用到的时候引用进来。这样也可以。
这样就可以在DWZ框架中打开了,仍存在的不足是没办法在当前的标签框架中打开,都要新增加,即使设置target:”"也不行。除非是这样,你新打开的标签框架就是没有名字的,这样就可以在当前的标签框架中打开了,但是这样一来的话,如果不设置固定的标签框架,又很容易混乱。所以这是比较纠结的小问题。
Ⅵ dwz框架标签问题
dwz我在用,class用来掉封装的CSS,比如class="required" requires是DWZ框架封装的类属性,实现了input框不能为空,你可以去看源码,
Ⅶ dwz框架是什么意思源码在哪下 mvc框架是什么东西
首先找一个好的框架,可以找一本相关的案例书入手会好一些, 否则就选择知名的有二次开发文档的开源项目,学习流程:1,下载运行源码,2查看项目结构框架,3,首先从简单功能入手,然后一步步准备深入, 选择好开源项目了,可以网络找一下文档
Ⅷ DWZ框架整合UEditor编辑器,求有整过的人解答
首先要改的是dwz.ui.js脚本了
找到if ($.fn.xheditor) { 这行(写好加载网络编辑器当然下面的 xheditor 要注释掉)
在上面添加
//编辑器加载更换到百毒编辑器 fix:corz
if ($("textarea.editor", $p).length>0) {
var mole = $("textarea.editor", $p).attr('mole');
ueditor_loader[mole]={};
$("textarea.editor", $p).each(function(i){
var $this = $(this);
var mole=$this.attr('mole');
var thisid= mole+'_'+i;
$this.attr('id',thisid);
var uplink=$this.attr('upLink');
var session=$this.attr('session');
var ifheight=$this.attr('height')?$this.attr('height'):320;
//var thisname=$this.attr('name');
ueditor_loader[mole][i]= new .editor.ui.Editor({
minFrameHeight:ifheight
,imageUrl:uplink+'image_upload'
//,snapscreenServerUrl:uplink+'image_upload'
,fileUrl:uplink+'file_upload?'+session
,catcherUrl:uplink+'get_remote_image'
,imageManagerUrl:uplink+'image_manager'
,wordImageUrl:uplink+'image_upload'
,getMovieUrl:uplink+'get_movie'
//,textarea:thisname
});
ueditor_loader[mole][i].render( $this[0] );
});
}
编辑器的基本引入放到index.html里面
<script type="text/javascript">
var UEDITOR_HOME_URL='__PUBLIC__/ueditor/',ueditor_loader={};
//编辑器同步
function editorSyn(ename){
$.each(ueditor_loader[ename],function(i){
this.sync();
});
}
</script>
<link rel="stylesheet" type="text/css" href="__PUBLIC__/ueditor/themes/default/ueditor.css"/> <script type="text/javascript" charset="utf-8" src="__PUBLIC__/ueditor/editor_config.js"></script> <script type="text/javascript" charset="utf-8" src="__PUBLIC__/ueditor/editor_all_min.js"></script>
这里说明一下为啥要定义 ueditor_loader 这个全局属性了因为navtab提交时占用了onsubmit,必须要手动同步,而在ueditor_loader里进行对 new .editor.ui.Editor 对象进行存放,在editorSyn 里进行同步而用的。在navtab页面里onsubmit改成onsubmit="editorSyn('{:MODULE_NAME}');return validateCallback(this, navTabAjaxDone);">
编辑器的加载
<dl class="nowrap">
<dt>详细内容:</dt>
<dd class="w720">
<textarea class="editor" name="content" height="400" session="{:C('VAR_SESSION_ID')}={:session_id()}" upLink="__GROUP__/ueditor/" mole="{:MODULE_NAME}">{$vo.content}</textarea>
</dd>
</dl>
各方面的参数都是相对应的大家看看就明白了mole="{:MODULE_NAME}"就是定义一下所在的模块,放到ueditor_loader[mole]里到时候editorSyn('{:MODULE_NAME}')时找回页面所在的ueditor_loader进行同步再提交到服务器({:MODULE_NAME}在多标签的唯一性,到 editorSyn就可以单单同步写着{:MODULE_NAME}的编辑器实例对象了)
ie加载编辑器(1.2.1版)还有一个bug,必须改过ueditor\third-party\SyntaxHighlighter\shCore.js
到299行换成下面的代码在if (str) str += '';的下面换成
if(str){
real.replace.call(str.toString().slice(match.index), r2, function () {
for (var i = 1; i < arguments.length - 2; i++) {
if (arguments[i] === undefined)
match[i] = undefined;
}
});
}