javascrpt笔记
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" />
var fatherFileQ3 = obj[i].getAttribute('fatherfileq3');//获取自定义属性值
window.location.href='url'
jQuery("#select1").val();是取得选中的值,
jQuery("#select1").text();就是取得的文本。
//zTree.expandAll(true);展开所有树
//var node = zTree.getNodeByParam("id",0);
//zTree.expandNode(node, true, false);展开node一下的树
distinct
var id = $("#eduChange option:selected").attr("id");----正确
$("#eduChange option:selected").text());---返回值
var year = $("#year").find("option:selected").text();
$("#check_times? option:selected").attr("value"));
遍历集合、数组
$.each(msg,function(){
???
?});
$.each( [0,1,2], function(i, n){
?alert( "Item #" + i + ": " + n );
?});
遍历treeNode
for(i in treeNode){
??? alert(i);//i就是test的属性名
??? alert(treeNode.i);//test.i就是属性值
}
这么简单到问题都不知道呀, 虽然过期了,还是给发下解决方法
for(attribute in person){
?? var objectValue = eval('person.' + attribute);
?? alert(objectValue);
}
//获取URL当中?id=2中id的值
function getUrlParam(name) {
?var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
?var r = window.location.search.substr(1).match(reg);
?if (r != null)
??return unescape(r[2]);
?return null;
}
jquery获取数组长度 select checkbox按名称获取
$("input[name='channels']")
按名称获取并且选择选中的元素
$("input[name='channels']:checked")
按名称获取并且选择选中的元素的个数
$("input[name='channels']:checked").size()
还有这种取法
$("input[name='channels']:checked").length
获取checkbox的值
$("input[type='checkbox']").each(function(i) {
?if ($(this).is(':checked')) {
??alert(i + "-checked-" + $(this).attr("value"));
??}else{
??alert("请选择操作数据");
???}
});
$("input[type='checkbox']").attr('value')
返回结果:501
$("input[type='checkbox']").is(':checked')
返回结果:选中=true,未选中=false
checked.eq(0).closest("tr").find("td").each(function(i) {
?alert("id = "+$(this).attr("value"));
?alert(i + " " + $(this).text());
});
var arrayValue = checked.eq(0).closest("tr").find("td");
var levelId =arrayValue.eq(0).attr("value");
var levelCode = arrayValue.eq(2).attr("value");//可能有问题
var levelName = arrayValue.eq(3).text();
在JQuery编码中,我们会判断元素是否存在某个属性.比如是否包含 的样式呢.JQuery判断就非常简单了,因为有 hasClass这个方法 $("input
[name=new]").hasClass("new") 即可判断.
但是有时候我们需要判断别的属性,比如有的 a 链接包含 rel 属性,有的没有rel属性.这时该怎么判断呢?
这时就没有现成的方法了. 如果存在某个属性 $("#aid").attr("rel") 会返回 rel的值,如果不存在 rel属性则会返回"undefined"
undefined 就是 undefined类型 , if($("#aid").attr("rel")=="undefined") 这个判断可能不成立.
因为类型不相同.
建议使用 if(typeof($("#aid").attr("rel"))=="undefined") 即可?
全选
?$("#checkAll").click(function(){
??//alert($("#checkAll").attr("checked"));
??$("#tbody input[type='checkbox']").each(function(i){
???if($("#checkAll").attr("checked")){
????$(this).attr("checked",true);
???}else{
????$(this).attr("checked",false);
???}
??});
?});
javascript/JS限制用户名只能输入字母和数字下划线
2010-05-20 10:08
function checkreg(){
??????? var msg = "对不起,输入错误\n";
??????? var regform = document.all.reg;
??????? var username = regform.username;
??????? var password1 = regform.password1;
??????? var password2 = regform.password2;
??????? var usern = /^[a-zA-Z0-9_]{1,}$/;
??????? //alert(username.value);
??????? if (!username.value.match(usern)) {
??????????????? msg += "用户名只能由字母数字下划线组成\n";
??????????????? alert(msg);
??????????????? username.value = '';
??????????????? username.focus();
??????????????? return false;
??????? }
??????? if(password1.value != password2.value) {
??????????????? msg += '两次输入密码不一致';
??????????????? alert(msg);
??????????????? password1.value = '';
??????????????? password2.value = '';
??????????????? password1.focus();
??????????????? return false;
??????? }
??????? return true;
}
1、只允许输入数字
??? <input name="username" type="text" onkeyup="value=this.value.replace(/\D+/g,’’)">
??? 2、只允许输入英文字母、数字和下划线(以下二种方法实现)
??? <input name="username" type="text" style="ime-mode:disabled">
??? <input name="username" type="text" onkeyup="value=value.replace(/[^\w\.\/]/ig,’’)">
??? 3、只允许输入英文字母、数字和=@#
??? <input name="username" type="text" onkeyup="value=value.replace(/[^\w=@#]|_/ig,’’)">
??? 4、只允许输入汉字
??? <input name="username" type="text" onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,’’)">
只能输入数字:"^[0-9]*$"。
只能输入n位的数字:"^\d{n}$"。
只能输入至少n位的数字:"^\d{n,}$"。
只能输入m~n位的数字:。"^\d{m,n}$"
只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。
只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。
只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。
只能输入非零的正整数:"^\+?[1-9][0-9]*$"。
只能输入非零的负整数:"^\-[1-9][]0-9"*$。
只能输入长度为3的字符:"^.{3}$"。
只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。
只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。
只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。
只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。
只能输入由数字、26个英文字母或者下划线组成的字符串:"^\w+$"。
验证用户密码:"^[a-zA-Z]\w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。
验证是否含有^%&',;=?$"等字符:"[^%&',;=?$\x22]+"。
只能输入汉字:"^[\u4e00-\u9fa5]{0,}$"
function dateCheck(str){
???? var re = new RegExp("^([0-9]{1,2})[./]{1}([0-9]{1,2})[./]{1}([0-9]{4})$");
???? var ar;
???? var res = true;
???? if ((ar = re.exec(str)) != null){
???????? var i;
???????? i = parseFloat(ar[1]);
???????? if (i <= 0 || i > 31){
???????????? res = false;
???????? }
???????? i = parseFloat(ar[2]);
???????? // verify mm
???????? if (i <= 0 || i > 12){
???????????? res = false;
???????? }
???? }else{
???????? res = false;
???? }
???? if (!res){
???????? alert('请输入 DD/MM/YYYY 日期格式');
???? } else{
????? alert("success");
???? }
???? return res;
?}
self.parent.frames["functionFrame"].location.reload();
//alert(self.parent.frames["functionFrame"]);
//window.location.reload();
$("#show_price").html('测试赋值给你');
$("#show_price").text('测试赋值给你');
示例:当某个div显示内容,一秒后消失:
$("#button1").click(function(){
$("#sp").text("ttt");
setTimeout(function(){
?$("#sp").text("");
},1000)
});
java.util.ConcurrentModificationException不能删除在用的集合元素
下拉树显示滚动条,高度必须指定
<div style="width:auto;height:690px; overflow:auto;">
??<ul id="treeDemo" " +ms);
}
使用jquery获取radio的值,最重要的是掌握jquery选择器的使用,在一个表单中我们通常是要获取被选中的那个radio项的值,所以要加checked来筛选,比如有以
下的一些radio项:
1.<input type="radio" name="testradio" value="jquery获取radio的值" />jquery获取radio的值<br? />
2.<input type="radio" name="testradio" value="jquery获取checkbox的值" />jquery获取checkbox的值<br? />
3.<input type="radio" name="testradio" value="jquery获取select的值" />jquery获取select的值<br? />
要想获取某个radio的值有以下的几种方法,直接给出代码:
1.$('input[name="testradio"]:checked').val();
1.$('input:radio:checked').val();
1.$('input[@name="testradio"][checked]');
1.$('input[name="testradio"]').filter(':checked');
差不多挺全的了,如果我们要遍历name为testradio的所有radio呢,代码如下
1.$('input[name="testradio"]').each(function(){
2.alert(this.value);
3.});
如果要取具体某个radio的值,比如第二个radio的值,这样写
1.$('input[name="testradio"]:eq(1)').val()
javascript无提示直接关闭网页
由于IE版本不一样无提示关闭方法也不一样。最近在ie7试了window.opener=null;window.close()、window.parent=null;window.close()、window.open
("about:blank");window.close()都不行最后找到了一个可行的,说出来大家分享一下
window.opener=null;?????
window.open('','_self');?????
window.close();
4.以下是出现这种现象的原因
5. Netscape 3.0以上版本支持的JavaScript 1.1规定:如果一个窗口是采用open()方法打开的,则使用close()关闭时不出现确认的对话框,而如果不是采用open
()方法打开的,都要出现这一确认对话框。对于IE 4.0来说,关闭时都会出现确认对话框,不管是否是使用open()方法打开的窗口。? 在IE5中也是:如果一个窗口
是采用open()方法打开的,则使用close()关闭时不出现确认的对话框,而如果不是采用open()方法打开的,都要出现这一确认对话框。
javascript:history.go(-1);
ztree中获取某节点的所有叶子节点
function treenodeClick(event, treeId, treeNode, clickFlag) {
??? //此处treeNode 为当前节点
???? var str ='' ;
???? str = getAllChildrenNodes(treeNode,str);
???? alert(str); //所有叶子节点ID
}
function getAllChildrenNodes(treeNode,result){
????? if (treeNode.isParent) {
??????? var childrenNodes = treeNode.children;
??????? if (childrenNodes) {
??????????? for (var i = 0; i < childrenNodes.length; i++) {
??????????????? result += ',' + childrenNodes[i].id;
??????????????? result = getChildNodes(childrenNodes[i], result);
??????????? }
??????? }
??? }
??? return result;
}
zTree子节点获取所有父节点的名称
treeNode.getParentNode 方法可以得到节点的父节点;利用 while,同时利用判断父节点或treeNode.parentTId 是否为 null 就可以很容易的循环找到全部父节点
了。
function treeClick(event, treeId, treeNode){//获取全部父节点
?var flag = treeNode.getParentNode();
?var array = [treeNode.name];
?for(var i=1;flag != null;i++){
??array[i] = flag.name;
??flag = flag.getParentNode();
?}
}
juqery中如何给两个按钮绑定同一个事件啊
$('#aa,#bb').click(function(){})或者$('#aa,#bb').bind("click",函数名);
//获取选中tree的node值
function onCheck(event, treeId, treeNode) {
?var zTree = $.fn.zTree.getZTreeObj("treeDemo"),
?nodes = zTree.getCheckedNodes(true);
?v = "";
?for (var i=0, l=nodes.length; i<l; i++) {
???? v += nodes[i].id + ",";
???? //alert(nodes[i].id);?? //获取选中节点的id值
???? //document.getElementById('test').value=nodes[i].id;
??? }
??? if (v.length > 0 ){
???? v = v.substring(0, v.length-1);
??}
??? $("#rightsId").attr("value",v);
}
dwr获取session信息
WebContext sc = WebContextFactory.get();
if (null == sc) {
?return ret;
}
HttpSession session = sc.getHttpServletRequest().getSession();
if (null == session) {
?return ret;
}
<%--新增添加回车事件--%>
<c:if test="${empty entity.Id}">
<%--回车事件--%>
var SubmitOrHidden = function(evt){
??? evt = window.event || evt;
??? if(evt.keyCode ==13){
??????? var cardNo = $$("cardNo").value.trim();
??????? if(cardNo.isNotEmpty()){
???? ?findStudent(cardNo);
??????? }else{
???alert("请填写身份证号!");
??????? }
??????? return false;
?}
}
<%--当有键按下时执行函数--%>
window.document.onkeydown=SubmitOrHidden;
</c:if>