关于网站客服窗口
上网时可以看到有的网站会弹出一个客服窗口,内容例如“欢迎您,来自山东济南的朋友。”,请问这是如何实现的啊,如何获取到浏览者的地理位置?
上网时可以看到有的网站会弹出一个客服窗口,内容例如“欢迎您,来自山东济南的朋友。”,请问这是如何实现的啊,如何获取到浏览者的地理位置?
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <%@ page isELIgnored="false"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>My JSP 'index.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <script type="text/javascript" src="js/jquery-1.1.3.1.pack.js"></script> <script type="text/javascript" src="js/thickbox.js"></script> <link rel="stylesheet" href="css/thickbox.css" type="text/css"></link> <!-- --> </head> <body> <form action="login.action?method=login" method="post"> <input type="text" name="username"/>用户名 <input type="password" name="userpassword"/>密码 <input type="submit" name="submit"/> </form> <%ArrayList<Integer> array = new ArrayList<Integer>(); for(int i = 0;i < 100;i++){ array.add(i); } request.setAttribute("array",array); request.setAttribute("aa","aa"); %> <c:forEach items="${array}" var="temp"> ${temp} </c:forEach> </body> <a href="success.jsp" title="" type="1" class="thickbox" >点击</a> </html>
三个文件A,B,C,D
A镶嵌一个框架,包含了B,B showDialog弹出C,在c中弹出D上传文件,上传后返回到了C,C再返回到B。
具体过程如上描述。以上是一个Html编辑器的一个上传图片的功能。此功能上传了图片把值从D返回给了B。但我还要把值在返回给A页面中的text这个input内。实现这个功能,遇到麻烦,请大家一起讨论和帮忙。
以下截取部分代码。
A的form名是ttform,input是test
B中 ShowDialog('dialog/img.htm', 350, 315, true)
C就是img页面,其中代码
function UploadSaved(sFileName){
d_fromurl.value=http://topic.csdn.net/u/20090712/09/GetHttpUrl(config.StyleUploadDir+sFileName);
ReturnValue();
}
function ReturnValue(){
sFromUrl = d_fromurl.value;
sAlt = d_alt.value;
sBorder = d_border.value;
sBorderColor = d_bordercolor.value;
sFilter = d_filter.options[d_filter.selectedIndex].value;
sAlign = d_align.value;
sWidth = d_width.value;
sHeight = d_height.value;
sVSpace = d_vspace.value;
sHSpace = d_hspace.value;
if (sAction == "MODI") {
oControl.src = http://topic.csdn.net/u/20090712/09/sFromUrl;
oControl.alt = sAlt;
oControl.border = sBorder;
oControl.style.borderColor = sBorderColor;
oControl.style.filter = sFilter;
oControl.align = sAlign;
oControl.width = sWidth;
oControl.height = sHeight;
oControl.vspace = sVSpace;
oControl.hspace = sHSpace;
}else{
var sHTML = '';
if (sFilter!=""){
sHTML=sHTML+'filter:"'+sFilter+';';
}
if (sBorderColor!=""){
sHTML=sHTML+'border-color:"'+sBorderColor+';';
}
if (sHTML!=""){
sHTML=' style="'+sHTML+'"';
}
sHTML = ' <img src=http://topic.csdn.net/u/20090712/09/"'+sFromUrl+'"'+sHTML;
if (sAlt!=""){
sHTML=sHTML+' alt"'+sAlt+'"';
}
if (sAlign!=""){
sHTML=sHTML+' align="'+sAlign+'"';
}
if (sWidth!=""){
sHTML=sHTML+' width="'+sWidth+'"';
}
if (sHeight!=""){
sHTML=sHTML+' height="'+sHeight+'"';
}
if (sVSpace!=""){
sHTML=sHTML+' vspace="'+sVSpace+'"';
}
if (sHSpace!=""){
sHTML=sHTML+' hspace="'+sHSpace+'"';
}
sHTML=sHTML+'>';
dialogArguments.insertHTML(sHTML);
//dialogArguments.document.getElementById("test").value=http://topic.csdn.net/u/20090712/09/"OK"; 此处就是我想实现传递到A的代码,请问如何写 }
window.returnValue = http://topic.csdn.net/u/20090712/09/null;
window.close();
}
D页面就是upload.jsp,代码如下
out.println(" <script language=javascript>");
out.print("parent.UploadSaved('");
out.print(sSaveFileName);
out.print("');var obj=parent.dialogArguments.dialogArguments;if (!obj) obj=parent.dialogArguments;try{obj.addUploadFile('");
out.print(sOriginalFileName);
out.print("', '");
out.print(sSaveFileName);
out.print("', '");
out.print(sPathFileName);
out.print("');} catch(e){}");
out.println(";history.back() </script>");
时间格式:Sat Feb 19 23:48:12 +0800 2011,希望格式化成yyyy/MM/dd hh:mm:ss
怎么将数字转换成中文大写,目前我下面这个代码运行出来的效果有点出入:
如:102转换后是“壹佰贰”正确应该是:壹佰零贰。
1020转换后是"壹仟贰拾".正确应该是:壹仟零贰拾
谢谢各位JS高手,帮判断一下。谢谢
<html>
<script language="javascript">
//将阿拉伯数字翻译成中文的大写数字
function moneyToCapital(formName,sourceId,targetId)
{
var source=document.forms[formName].all[sourceId];
var target=document.forms[formName].all[targetId];
var num=source.value;
if(!/^\d*(\.\d*)?$/.test(num)) throw(new Error(-1, "Number is wrong!"));
var AA = new Array("零","壹","贰","叁","肆","伍","陆","柒","捌","玖");
var BB = new Array("","拾","佰","仟","?","?","圆","");
var CC = new Array("角", "分", "厘");
var a = (""+ num).replace(/(^0*)/g, "").split("."), k = 0, re = "";
for(var i=a[0].length-1; i>=0; i–) //author: meizz
{
switch(k)
{
case 0 : re = BB[7] + re; break;
case 4 : if(!new RegExp("0{4}\\d{"+ (a[0].length-i-1) +"}$").test(a[0]))
re = BB[4] + re; break;
case 8 : re = BB[5] + re; BB[7] = BB[5]; k = 0; break;
}
if(k%4 == 2 && a[0].charAt(i)=="0" && a[0].charAt(i+2) != "0") re = AA[0] + re;
if(a[0].charAt(i) != 0) re = AA[a[0].charAt(i)] + BB[k%4] + re; k++;
}
if(a.length>1) //加上小数部分(如果有小数部分)
{
re += BB[6];
for(var i=0; i<a[1].length; i++)
{
re += AA[a[1].charAt(i)] + CC[i];
if(i==2) break;
}
}
// return re;
target.value= http://topic.csdn.net/u/20101130/12/re ;
}
</script>
<form name="form1" action="" method="post">
<input type="text" name="a" id="a" onblur="moneyToCapital(‘form1′,’a',’b')" onkeyup="moneyToCapital(‘form1′,’a',’b')">
<input type="text" name="b" id="b" value=http://topic.csdn.net/u/20101130/12/"">
</form>
</html>
有没有谁能帮我介绍一下正则验证到底是个怎么回事,我没学过这个东西。
特别是里面的很多符号、字母(例如:(/\w+/)等等之类的,最好有那位好心人能介绍一本通俗易懂的JavaScript比较基础入门的书籍不要太厚,我只需要知道一些简单的基本语法之类的,知道怎么用就行了,有视频教程的最好不过了。我现在在学jsp老师突然叫我们做邮箱认证,正则一点都不会,郁闷啊。现在想好好学习一下。
我只是想学习一下JavaScript中的正则验证方法,而不是要精通JavaScript因为没那么多时间去看了还要学别的。
拜托了
我邮箱:119135678@qq.com
Ext.ux.TabCloseMenu = function(){ var tabs, menu, ctxItem; this.init = function(tp){ tabs = tp; tabs.on('contextmenu', onContextMenu); //tabs.on('dblclick',onDblClick); } //右键事件 function onContextMenu(ts, item, e){ if(!menu){ menu = new Ext.menu.Menu([{ id: tabs.id + '-close', text: '关闭', handler : function(){ tabs.remove(ctxItem); } },{ id: tabs.id + '-close-others', text: '关闭其他', handler : function(){ tabs.items.each(function(item){ if(item.closable && item != ctxItem){ tabs.remove(item); } }); } }]); } ctxItem = item; var items = menu.items; items.get(tabs.id + '-close').setDisabled(!item.closable); var disableOthers = true; tabs.items.each(function(){ if(this != item && this.closable){ disableOthers = false; return false; } }); items.get(tabs.id + '-close-others').setDisabled(disableOthers); menu.showAt(e.getPoint()); } //双击事件 //function onDblClick(ts, item, e){ //if(item.closable){ // tabs.remove(item); // } //} };
这段代码是右键事件的,怎么实现双击事件把tab关闭,谢谢。
Ext.getCmp('FormPanel').getForm().submit({ // clientValidation : true, url : '×××××.aspx', method: 'POST', waitTitle : '请稍候', waitMsg : "正在提交请求...", success : function(form, action) { Ext.Msg.alert("提交请求成功!"); }, failure : function(form, action) { Ext.Msg.alert("提交请求失败!"); } });
后台返回:
[JSON]{
"filePath":"\\resources\\upload\\photo\\2011\\02\\28\\1298872663030.tmp",
"success":true,
"uploadFile":"\\temp\\upload_6edad040_12e6ad0124b__8000_00000020.tmp",
"uploadFileContentType":"image\/pjpeg",
"uploadFileFileName":"Tulips.jpg"}
求解???
通过firebug 加载:https://passport.baidu.com/?login&tpl=mn 然后运行js,得到提示错误,没有权限,不知道为什么?如何得到这个button(登陆按钮)元素呢?
function getObjByAtt_r(obj,tagName,Att,selfAtt,like)
{
var elements = obj.getElementsByTagName(tagName);
for(var i=0;i<elements.length;i++)
{
if(like != undefined)
{
if(inCount_r(selfAtt,elements[i].getAttribute(Att)))
{
return elements[i];
break;
}
}
else
{
if(elements[i].getAttribute(Att) == selfAtt)
{
return elements[i];
break;
}
}
}
return null;
}
var obj = getObjByAtt_r(document,"input","type","submit");
document.write(obj);
有一句代码
Ext.getCmp(‘box’).getEl().dom.src=http://topic.csdn.net/u/20110228/20/rows[0].get(‘pic_url’);
将box中的 src 的值 设置成 rows[0].get(‘pic_url’)。
这句话 在 IE 遨游这些浏览器中 是正常的 但是在火狐里面 却找不到 Ext.getCmp(‘box’).getEl() 方法。 求解。
我在页面创建了元素标签,也设了id 按理来说应该直接能找到,可试了好几次都是返回Null 怎么回事?
点击图片左边区域就向左边切换一副图片,同理点击右边也是一样。
是通过把图片都放入数组中,但如何点击左右区域时向左右方向切换图片呢?
问题 怎么向setTimeout传递参数?????望高手指点 //限制输入字符的个数 //参数:type控件类型 obj控件ID maxLength最大的长度 function MaxInputLength(type,obj,maxLength) { window.setTimeout("MaxInputLength("+ type +"," + obj +"," + maxLength+ ");",100); var inputVal=getid(type+obj).value; if(inputVal.length>maxLength) { inputVal=inputVal.substring(0,maxLength); } else{ $("#"+obj).html(maxLength-inputVal.length); } }
调用:
<asp:TextBox ID="txtMaxinput" runat="server" TextMode="MultiLine" MaxLength="90" onkeydown="MaxInputLength('txt','Maxinput','90')" onkeyup="MaxInputLength('txt','Maxinput','90')"></asp:TextBox>你还可以输入<span id="Maxinput">90</span>个字符 错误信息:txt未定义!
在text框中输入20121212,失焦点时自动变成2012-12-12,,谁会写,我确实有点弱弱的JS,,找工作也因为这个碰壁过,,其它的都还行。
//这是表单的提交 addGyxxForm.getForm().submit({ waitMsg : '柜员添加中,请稍后......', success : [color=#FF0000]function(form, action)[/color] { Ext.Msg.alert('提示','添加柜员信息成功!'); }, [color=#FF0000]failure : function(form, action) {[/color] Ext.MessageBox.alert('警告', '添加柜员信息失败! ' + action.result.info ); } });
红色那里的参数到底是什么意思?
每次我录入表单的数据有错时 action.result.info 就报为空或不是对象..
action.result.info 到底在哪里?
找了一天了都没找到 求高人指教..