在IE9浏览器中有一个iframe框架,有一个页面有my97日历控件,为什么刷新这个页面my97就不弹出日历了!刚开始网上说是没有用最新的代码,最后换成最新的还是不行。尽快一天的时间终于找到答案。解决办法如下: 在WdatePicker.js配置文件,里面有个$crossFrame,默认是true改为问题$crossFrame:false就解决了。希望对大家有帮助!
官方对此字段的解释是 是否跨框架,一般设置为true即可,遇到跨域错误时可以将此功能关闭。
原文:
http://blog.163.com/johns_cena/blog/static/16802644020132153190125/
字号 磅 毫米数
小初 36 12.70
一号 26 9.17
小一 24 8.47
二号 22 7.76
小二 18 6.35
三号 16
![搜索](http://img.baidu.com/img/iknow/qb/select-search.png)
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
--添加
--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'
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
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
原文:
http://zhidao.baidu.com/link?url=9J7uz4M0AvCgH42DXICuke9dMxsKfmwgGIJcVpmyjZh-sltTqP2zLiWi7mPedyWR0yyqhkgZ_BjoaYhqooyR6q放图片的容器设置行高,给图片设置属性absmiddle,但是你说你的图片不知道高度,所以你的容器高度也应该是不定吧?如果是这样,也就是你容器的行高是不定的,这种方法也不好。
建议适时使用表格,DIV+CSS设计不是非要全盘都用DIV布局,适时而动才是王道,灵活应用。
<div style="
line-height:200px"><img src="" align="absmiddle"
![搜索](http://img.baidu.com/img/iknow/qb/select-search.png)
/></div>
<table><tr><td valign="middle"><img src="" /></td><td></td></tr></table>
<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'})"/>
原谅:
http://blog.csdn.net/sunyujia/article/details/2572861用javascript取控件的值本来是一件简单的事却被eWebEditor搞的很不方便,导致很多初学者,不知道该如何获取。在分析之前先把我们习惯性的取值方法写出来。
<HTML>
![](/Images/OutliningIndicators/None.gif)
<HEAD>
![](/Images/OutliningIndicators/None.gif)
<TITLE>eWebEditor : 标准调用示例</TITLE>
![](/Images/OutliningIndicators/None.gif)
<META http-equiv=Content-Type content="text/html; charset=gb2312">
![](/Images/OutliningIndicators/None.gif)
<link rel='stylesheet' type='text/css' href='example.css'>
![](/Images/OutliningIndicators/None.gif)
<script>
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
function validateForm()
{
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
if(document.getElementById("content1").value!="")
{
![](/Images/OutliningIndicators/InBlock.gif)
document.getElementById("myform").submit();
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
}else
{
![](/Images/OutliningIndicators/InBlock.gif)
alert("空");
![](/Images/OutliningIndicators/InBlock.gif)
}
![](/Images/OutliningIndicators/InBlock.gif)
}
![](/Images/OutliningIndicators/None.gif)
</script>
![](/Images/OutliningIndicators/None.gif)
</HEAD>
![](/Images/OutliningIndicators/None.gif)
<BODY>
![](/Images/OutliningIndicators/None.gif)
<FORM method="post" name="myform" action="rs.jsp">
![](/Images/OutliningIndicators/None.gif)
<TABLE border="0" cellpadding="2" cellspacing="1">
![](/Images/OutliningIndicators/None.gif)
<TR>
![](/Images/OutliningIndicators/None.gif)
<TD>编辑内容:</TD>
![](/Images/OutliningIndicators/None.gif)
<TD>
![](/Images/OutliningIndicators/None.gif)
<INPUT type="hidden" name="content1" >
![](/Images/OutliningIndicators/None.gif)
<IFRAME ID="eWebEditor1" src="../ewebeditor.htm?id=content1&style=coolblue" frameborder="0" scrolling="no" width="550" height="350"></IFRAME>
![](/Images/OutliningIndicators/None.gif)
</TD>
![](/Images/OutliningIndicators/None.gif)
</TR>
![](/Images/OutliningIndicators/None.gif)
<TR>
![](/Images/OutliningIndicators/None.gif)
<TD colspan=2 align=right>
![](/Images/OutliningIndicators/None.gif)
<INPUT type=button value="提交" onclick="validateForm()">
![](/Images/OutliningIndicators/None.gif)
<INPUT type=reset value="重填">
![](/Images/OutliningIndicators/None.gif)
<INPUT type=button value="查看源文件" onclick="location.replace('view-source:'+location)">
![](/Images/OutliningIndicators/None.gif)
</TD>
![](/Images/OutliningIndicators/None.gif)
</TR>
![](/Images/OutliningIndicators/None.gif)
</TABLE>
![](/Images/OutliningIndicators/None.gif)
</FORM>
![](/Images/OutliningIndicators/None.gif)
</BODY>
![](/Images/OutliningIndicators/None.gif)
</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,从而避免了编辑器每次更新都同步值这种没有必要的操作。
原文: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);
// 搞定...
原文:
http://blog.sina.com.cn/s/blog_8034a5a40101bejr.html最近在做前台效果的时候用到了JQuery提供的resize()事件。resize
这个事件是监听浏览器窗口的放大与缩小,也就是说浏览器窗口大小的变化。
我在W3CSCHOOL上面查阅的时候,提供了一个例子。W3C源码
- <</SPAN>html>
- <</SPAN>head>
- <</SPAN>script type="text/javascript" src="/jquery/jquery.js"></</SPAN>script>
- <</SPAN>script type="text/javascript">
- x=0;
- $(document).ready(function(){
- $(window).resize(function() {
- $("span").text(x+=1);
- });
- $("button").click(function(){
- $(window).resize();
- });
- });
- </</SPAN>script>
- </</SPAN>head>
- <</SPAN>body>
- <</SPAN>p>窗口的大小被调整了 <</SPAN>span>0</</SPAN>span> 次。</</SPAN>p>
- <</SPAN>p>请试着调整浏览器窗口的大小。</</SPAN>p>
- <</SPAN>button>触发窗口的 resize 事件</</SPAN>button>
- </</SPAN>body>
- </</SPAN>html>
结果我在IE环境下放大窗口 resize 事件执行了两次。后来我在谷歌和百度上面查询了下, 都存在IE环境下执行两次的相关信息。最后发现一个很不错的解决方案。 国外有个哥子写了个插件专门针对Jquery.resize()事件增强了。 地址在这里:http://benalman.com/projects/jquery-resize-plugin/ 在添加jquery.js之后在添加 "jquery.ba-resize.js" 就可以了。
- <</SPAN>html>
- <</SPAN>title>JQuery - resize()</</SPAN>title>
- <</SPAN>head>
- <</SPAN>script type="text/javascript" src="js/jquery.js"></</SPAN>script>
- <</SPAN>script type="text/javascript" src="js/jquery.ba-resize.js"></</SPAN>script>
- <</SPAN>script type="text/javascript">
- x=0;
- $(document).ready(function(){
- $(window).resize(function() {
-
$("span").text(x+=1);
- });
-
- });
- </</SPAN>script>
- </</SPAN>head>
- <</SPAN>body>
- <</SPAN>p>窗口大小被调整过 <</SPAN>span>0</</SPAN>span> 次。</</SPAN>p>
- <</SPAN>p>请试着重新调整浏览器窗口的大小。</</SPAN>p>
- </</SPAN>body>
- </</SPAN>html>