tinguo002

 

IE9浏览器中的My97日历控件刷新后无法打开问题解决办法

在IE9浏览器中有一个iframe框架,有一个页面有my97日历控件,为什么刷新这个页面my97就不弹出日历了!刚开始网上说是没有用最新的代码,最后换成最新的还是不行。尽快一天的时间终于找到答案。解决办法如下:

     在WdatePicker.js配置文件,里面有个$crossFrame,默认是true改为问题$crossFrame:false就解决了。希望对大家有帮助!


     官方对此字段的解释是 是否跨框架,一般设置为true即可,遇到跨域错误时可以将此功能关闭。


原文:http://blog.163.com/johns_cena/blog/static/16802644020132153190125/

posted @ 2013-12-08 21:47 一堣而安 阅读(662) | 评论 (0)编辑 收藏

jQuery 插件设置cookie

jquery.cookie.js使用介绍

2011-04-21

对cookies的操作在当访问一个网站就无时无刻的都伴随着我们,记录着我们的一举一动,并将不危害用户隐私的信息,将以保存,这样用户就不用去从新再次操作重复的步骤,这样大大方便了客户,也增加了客户对网站的回头率。

jquery.cookie.js 提供了jquery中非常简单的操作cookie的方法。

  • $.cookie('the_cookie'); // 获得cookie
  • $.cookie('the_cookie', 'the_value'); // 设置cookie
  • $.cookie('the_cookie', 'the_value', { expires: 7 }); //设置带时间的cookie
  • $.cookie('the_cookie', '', { expires: -1 }); // 删除
  • $.cookie('the_cookie', null); // 删除 cookie
  • $.cookie('the_cookie', 'the_value', {expires: 7, path: '/', domain: 'jquery.com', secure: true});//新建一个cookie 包括有效期 路径 域名等

这个插件默认的过期是按天数计算的,我们可以修改下,按毫秒计算,修改如下:

1if (typeof options.expires === 'number') {
2    //var days = options.expires, t = options.expires = new Date();
3    //t.setDate(t.getDate() + days);
4    var seconds = options.expires, t = options.expires = new Date();
5    t.setTime(t.getTime() + seconds);
6    //t.setTime(t.getTime() + days);
7    //date.setTime(date.getTime() + (1 * 24 * 60 * 60 * 1000));
8}

下面举个简单的例子:我们需要对某个页面进行阅读统计,但是呢,在一段时间里(比如5分钟),同一个人无论刷新了这个页面多少次都好,都只能算一次。这个时候可以借助cookie来实现:

01<script language="javascript" src="http://www.nowamagic.net/zt/access_count/js/jquery-1.4.2.min.js"></script>
02<script type="text/javascript" src="http://www.nowamagic.net/zt/access_count/js/jquery.cookie.js"></script>
03<script language="javascript" src="http://www.nowamagic.net/zt/access_count/js/jquery.jsonp-2.1.4.min.js"></script>
04<script type="text/javascript">
05    // 页面类型,标识一组页面
06    var pageType = 20110420;
07    // 页面id,标识唯一一个页面
08    var url = window.location.href;
09    var url_arr = url.split(".");
10    var id = url_arr[url_arr.length - 2];
11    //var id = 2;
12    //var cookie = $.cookie('the_cookie'+id, true, { expires: 5/24/60/60 });
13       
14    $(document).ready(function(){
15        init_count(pageType, id);
16    })
17       
18    // 初始化数据,同一个cookie一分钟的访问量都算一次
19    function init_count(pageType, id){
20        if($.cookie('the_cookie'+id)){
21            //alert("cookie已存在");
22            getViewData(pageType, id);
23        }
24        else
25        {
26            // 1分钟过期
27            var cookie = $.cookie('the_cookie'+id, 'Gonn', { expires: 1000 * 60 * 5 });
28            //$.cookie('the_cookie'+id, 'Gonn');
29            //var cookie = $.cookie('the_cookie'+id);
30            //alert(cookie);
31            insert_page(pageType, id);
32           
33        }
34    }
35   
36    // 不插入与更新时统计访问量
37    function getViewData(pageType, id){
38        $.ajax({ 
39            type: "get",        //使用get方法访问后台 
40            dataType: "jsonp"//返回json格式的数据 
41            jsonp:"callback",
42            url: "http://www.nowamagic.net/zt/access_count/manage.php", //要访问的后台地址 
43            data:{"opp":"view", "pageType":pageType, "id":id},
44            async: false,
45            success: function(data){ 
46                //alert(data.total);
47                $('#pc_1').html(data.total);
48                $('#pcm_1').html(data.record);
49           
50        }) 
51    }
52   
53    // 插入或者更新页面统计
54    function insert_page(pageType, id){
55        var j = null;
56        $.ajax({ 
57            type: "get",        //使用get方法访问后台 
58            dataType: "jsonp"//返回json格式的数据 
59            jsonp:"callback",
60            url: "http://www.nowamagic.net/zt/access_count/manage.php", //要访问的后台地址 
61            data:{"opp":"insert", "pageType":pageType, "id":id},
62            async: false,
63            success: function(data){ 
64                //alert(msg.current);
65                //alert(msg.record);
66                j = data;
67                //alert("111");
68                //alert(j.total);
69                $('#pc_1').html(data.total);
70                $('#pcm_1').html(data.record);
71           
72        }) 
73    }
74
75</script>

代码就直接原汁原味地贴上来吧,做个记录。

原文:http://www.nowamagic.net/jquery/jquery_JqueryCookie.php

posted @ 2013-12-08 21:46 一堣而安 阅读(293) | 评论 (0)编辑 收藏

几号字对应几磅

字号  磅   毫米数
小初  36   12.70
一号  26   9.17
小一  24   8.47
二号  22   7.76
小二  18   6.35
三号  16搜索   5.64
小三  15   5.29
四号  14   4.94
小四  12   4.32
五号  10.5  3.70
小五  9    3.18
六号  7.5   2.65
小六  6.5   2.29====中文Windows 98为了满足中文出版中使用字号作为字体大小的单位的需要,它允许用户同时使用“号”和 “磅”作为字体大小的单位。提供的字号包括:八号、七号、小六、六号、小五、五号、小四、四号、小三、三号、小二、二号、小一、一号、小初、初号。表1列出了每一种字体的“号”对应的“磅”值。
  表1 “号”与“磅”的对应关系
  字号码 磅值 字号 磅值
原文:
http://zhidao.baidu.com/link?url=zrjI9Vs3hTUYYvqbmviQGrdq_CNx4zzVSOi8CycKN4yI9RuwTbfBVm8fS4cAWaZ47f4BQMSGYP2SSWV2PDhXEq

posted @ 2013-12-06 11:39 一堣而安 阅读(521) | 评论 (0)编辑 收藏

oracle批量插入

--添加
 --dept_parent:父级部门unid,systemid:子系统unid
Insert into HZ.U_DEPT t(t.dept_unid,t.dept_name,t.dept_parent)
select e.seq_newsid.nextval,m.deptname,'147EDACDCE310C5B13AF9A4465901145' from e.e_dept m where m.systemid = 'B3C50DE07CAFA629A22C6295020F6144'

posted @ 2013-12-02 13:59 一堣而安 阅读(251) | 评论 (0)编辑 收藏

ORACLE SEQUENCE用法

ORACLE SEQUENCE用法

在oracle中sequence就是序号,每次取的时候它会自动增加。sequence与表没有关系。

1、Create Sequence

    首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE权限。

    创建语句如下:

复制代码
CREATE SEQUENCE seqTest
INCREMENT
BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXvalue -- 不设置最大值
NOCYCLE -- 一直累加,不循环
CACHE 10; --设置缓存cache个序列,如果系统down掉了或者其它情况将会导致序列不连续,也可以设置为---------NOCACHE
复制代码

2、得到Sequence值

定义好sequence后,你就可以用currVal,nextVal取得值。
    CurrVal:返回 sequence的当前值
    NextVal:增加sequence的值,然后返回 增加后sequence值

  得到值语句如下:
SELECT Sequence名称.CurrVal FROM DUAL;

  如得到上边创建Sequence值的语句为:

select seqtest.currval from dual

在Sql语句中可以使用sequence的地方:
    - 不包含子查询、snapshot、VIEW的 SELECT 语句
    - INSERT语句的子查询中
    - INSERT语句的values中
    - UPDATE 的 SET中

如在插入语句中

insert into 表名(id,name)values(seqtest.Nextval,'sequence 插入测试');

注:

    - 第一次NEXTVAL返回的是初始值;随后的NEXTVAL会自动增加你定义的INCREMENT BY值,然后返回增加后的值。

      CURRVAL 总是返回当前SEQUENCE的值,但是在第一次NEXTVAL初始化之后才能使用CURRVAL,否则会出错。

       一次NEXTVAL会增加一次 SEQUENCE的值,所以如果你在同一个语句里面使用多个NEXTVAL,其值就是不一样的。
    - 如果指定CACHE值,ORACLE就可以预先在内存里面放置一些sequence,这样存取的快些。cache里面的取完后,oracle自动再取一组 到cache。 使用cache或许会跳号, 比如数据库突然不正常down掉(shutdown abort),cache中的sequence就会丢失. 所以可以在create sequence的时候用nocache防止这种情况。

3、Alter Sequence
    拥有ALTER ANY SEQUENCE 权限才能改动sequence. 可以alter除start至以外的所有sequence参数.如果想要改变start值,必须 drop sequence 再 re-create。

例:

alter sequence SEQTEST maxvalue 9999999;
    另: SEQUENCE_CACHE_ENTRIES参数,设置能同时被cache的sequence数目。

4、Drop Sequence
DROP SEQUENCE seqTest;

5、一个例子

复制代码
create sequence SEQ_ID
minvalue
1
maxvalue
99999999
start
with 1
increment
by 1
nocache
order;

建解发器代码为:

create or replace trigger tri_test_id
  before
insert on S_Depart   --S_Depart 是表名
  for each row
declare
  nextid
number;
begin
 
IF :new.DepartId IS NULLor :new.DepartId=0 THEN --DepartId是列名
    select SEQ_ID.nextval --SEQ_ID正是刚才创建的
    into nextid
   
from sys.dual;
    :new.DepartId:
=nextid;
 
end if;
end tri_test_id;
复制代码

    OK,上面的代码就可以实现自动递增的功能了。

    注::new 代表 数据改变后的新值,相对应的有 :old 原值

          := 代表 赋值

          :nextid表示引用sqlplus中定义的变量

                                                        参考文档:http://www.cnblogs.com/scottckt/archive/2011/09/20/2182168.html

posted @ 2013-12-02 13:56 一堣而安 阅读(263) | 评论 (0)编辑 收藏

div+css中如何让图片垂直居中显示

原文:http://zhidao.baidu.com/link?url=9J7uz4M0AvCgH42DXICuke9dMxsKfmwgGIJcVpmyjZh-sltTqP2zLiWi7mPedyWR0yyqhkgZ_BjoaYhqooyR6q


放图片的容器设置行高,给图片设置属性absmiddle,但是你说你的图片不知道高度,所以你的容器高度也应该是不定吧?如果是这样,也就是你容器的行高是不定的,这种方法也不好。
建议适时使用表格,DIV+CSS设计不是非要全盘都用DIV布局,适时而动才是王道,灵活应用。
<div style="line-height:200px"><img src="" align="absmiddle"搜索 /></div>
<table><tr><td valign="middle"><img src="" /></td><td></td></tr></table>

posted @ 2013-12-01 16:30 一堣而安 阅读(240) | 评论 (0)编辑 收藏

My97日期控件 时间前后限制

<input id="d4311" class="Wdate" type="text" onFocus="WdatePicker({maxDate:'#F{$dp.$D(\'d4312\')||\'2020-10-01\'}'})"/>
      <input id="d4312" class="Wdate" type="text" onFocus="WdatePicker({minDate:'#F{$dp.$D(\'d4311\')}',maxDate:'2020-10-01'})"/>

posted @ 2013-11-21 13:50 一堣而安 阅读(336) | 评论 (0)编辑 收藏

如何利用js取得eWebEditor编辑器的内容

原谅:http://blog.csdn.net/sunyujia/article/details/2572861

用javascript取控件的值本来是一件简单的事却被eWebEditor搞的很不方便,导致很多初学者,不知道该如何获取。在分析之前先把我们习惯性的取值方法写出来。
<HTML>

<HEAD>

<TITLE>eWebEditor : 标准调用示例</TITLE>

<META http-equiv=Content-Type content="text/html; charset=gb2312">

<link rel='stylesheet' type='text/css' href='example.css'>

<script>

    
function validateForm(){


        
if(document.getElementById("content1").value!=""){

            document.getElementById(
"myform").submit();

        }
else{

            alert(
"");

        }


    }


</script>

</HEAD>

<BODY>

<FORM method="post" name="myform" action="rs.jsp">

<TABLE border="0" cellpadding="2" cellspacing="1">

<TR>

    
<TD>编辑内容:</TD>

    
<TD>

        
<INPUT type="hidden" name="content1" >

        
<IFRAME ID="eWebEditor1" src="../ewebeditor.htm?id=content1&style=coolblue" frameborder="0" scrolling="no" width="550" height="350"></IFRAME>

    
</TD>

</TR>

<TR>

    
<TD colspan=2 align=right>

    
<INPUT type=button value="提交" onclick="validateForm()"> 

    
<INPUT type=reset value="重填"> 

    
<INPUT type=button value="查看源文件" onclick="location.replace('view-source:'+location)"> 

    
</TD>

</TR>

</TABLE>

</FORM>

</BODY>

</HTML>

上面代码非常简单我们一般会认为document.getElementById("content1").value这样就可以取值了,但事实上并不是这样,通过这种方式取值,只能取到初始值,当编辑器的内容变化时是取不到的,为什么呢?为什么后台程序可以取得到编辑器中的值呢,<%=request.getParameter("content1")%>这里是可以取到编辑器中的内容的,但是document.getElementById("content1").value确不可以。看来eWebEditor在js中动了手脚,一定是动态帮定了提交事件,或动态绑定了在源码中搜索onsubmit找到如下代码,原来动态的绑定了onsubmit事件,这样每次在提交前会执行AttachSubmit函数

    oForm.attachEvent("onsubmit", AttachSubmit) ;

    if (! oForm.submitEditor) oForm.submitEditor = new Array() ;

    oForm.submitEditor[oForm.submitEditor.length] = AttachSubmit ;

    if (! oForm.originalSubmit) {

        oForm.originalSubmit = oForm.submit ;

        oForm.submit = function() {

            if (this.submitEditor) {

                for (var i = 0 ; i < this.submitEditor.length ; i++) {

                    this.submitEditor[i]() ;

                }

            }

            this.originalSubmit() ;

        }

    }



 

function AttachSubmit() {

    var oForm = oLinkField.form ;

    if (!oForm) {return;}

   

    var html = getHTML();

    ContentEdit.value = html;

    if (sCurrMode=="TEXT"){

        html = HTMLEncode(html);

    }

    splitTextField(oLinkField, html);

}

 

 

AttachSubmit就是copy编辑器的内容到隐藏域控件中的过程。

知道了过程我们的问题就不难解决了。只需在取编辑器内容之前执行下AttachSubmit即可



 function validateForm(){

     window.frames["eWebEditor1"].AttachSubmit();//执行iframe页面中的AttachSubmit函数

  if(document.getElementById("content1").value!=""){

   document.getElementById("myform").submit();

  }else{

   alert("空");

  }

 }


 整个过程就此结束,其实eWebEditor代码中的很多思想都是很具有参考价值的例如AttachSubmit的绑定submit 方法的重新封装,我还发现一段比较写的比较好的代码也一起贴出来。

var URLParams = new Object() ;

var aParams = document.location.search.substr(1).split('&') ;

for (i=0 ; i < aParams.length ; i++) {

 var aParam = aParams[i].split('=') ;

 URLParams[aParam[0]] = aParam[1] ;

}

 

var sLinkFieldName = URLParams["id"] ;

var sExtCSS = URLParams["extcss"] ;

var sFullScreen = URLParams["fullscreen"];

 

var config = new Object() ;

config.StyleName = (URLParams["style"]) ? URLParams["style"].toLowerCase() : "coolblue";

config.CusDir = URLParams["cusdir"];

config.ServerExt = "jsp";



解析url的方法,这种方法以前koko跟我说过一回,今天在ewebeditor中又看到了,看来是一种比较常规的分析URL参数的方法。

总结:其实eWebEditor只是修改了提交表单的两个事件,在提交表单前进行值copy,从而避免了编辑器每次更新都同步值这种没有必要的操作。



posted @ 2013-11-20 21:31 一堣而安 阅读(205) | 评论 (0)编辑 收藏

query取得iframe中元素的几种方法

原文:http://blog.csdn.net/zalion/article/details/5894103

 $(function(){
  var win = document.getElementById('jhjj_iframe').contentWindow;
     alert( win.document.body.innerText );
 });


在iframe子页面获取父页面元素
代码如下:

$('#objId', parent.document);
// 搞定...

posted @ 2013-11-20 21:28 一堣而安 阅读(232) | 评论 (0)编辑 收藏

解决在IE浏览器中JQuery.resize()执行多次的方法(转)

原文:http://blog.sina.com.cn/s/blog_8034a5a40101bejr.html

最近在做前台效果的时候用到了JQuery提供的resize()事件。resize
这个事件是监听浏览器窗口的放大与缩小,也就是说浏览器窗口大小的变化。


    我在W3CSCHOOL上面查阅的时候,提供了一个例子。W3C源码



  1. <</SPAN>html>

  2. <</SPAN>head>

  3. <</SPAN>script type="text/javascript" src="/jquery/jquery.js"></</SPAN>script>

  4. <</SPAN>script type="text/javascript">

  5. x=0;

  6. $(document).ready(function(){

  7. $(window).resize(function() {

  8. $("span").text(x+=1);

  9. });

  10. $("button").click(function(){

  11. $(window).resize();

  12. });

  13. });

  14. </</SPAN>script>

  15. </</SPAN>head>

  16. <</SPAN>body>

  17. <</SPAN>p>窗口的大小被调整了 <</SPAN>span>0</</SPAN>span> 次。</</SPAN>p>

  18. <</SPAN>p>请试着调整浏览器窗口的大小。</</SPAN>p>

  19. <</SPAN>button>触发窗口的 resize 事件</</SPAN>button>

  20. </</SPAN>body>

  21. </</SPAN>html>
 结果我在IE环境下放大窗口 resize 事件执行了两次。后来我在谷歌和百度上面查询了下, 都存在IE环境下执行两次的相关信息。最后发现一个很不错的解决方案。 国外有个哥子写了个插件专门针对Jquery.resize()事件增强了。 地址在这里:http://benalman.com/projects/jquery-resize-plugin/ 在添加jquery.js之后在添加 "jquery.ba-resize.js" 就可以了。  
 


  1. <</SPAN>html>

  2. <</SPAN>title>JQuery - resize()</</SPAN>title>

  3. <</SPAN>head>

  4. <</SPAN>script type="text/javascript" src="js/jquery.js"></</SPAN>script>

  5. <</SPAN>script type="text/javascript" src="js/jquery.ba-resize.js"></</SPAN>script>

  6. <</SPAN>script type="text/javascript">

  7. x=0;

  8. $(document).ready(function(){

  9. $(window).resize(function() {


  10. $("span").text(x+=1);

  11. });



  12. });

  13. </</SPAN>script>

  14. </</SPAN>head>

  15. <</SPAN>body>

  16. <</SPAN>p>窗口大小被调整过 <</SPAN>span>0</</SPAN>span> 次。</</SPAN>p>

  17. <</SPAN>p>请试着重新调整浏览器窗口的大小。</</SPAN>p>

  18. </</SPAN>body>

  19. </</SPAN>html>

posted @ 2013-11-07 13:54 一堣而安 阅读(1097) | 评论 (0)编辑 收藏

仅列出标题
共17页: First 上一页 4 5 6 7 8 9 10 11 12 下一页 Last 

导航

统计

常用链接

留言簿(1)

随笔分类

随笔档案

收藏夹

搜索

最新评论

阅读排行榜

评论排行榜