为项目引入JQuery 库

我们可以自己下载相应的文件,放入到我们自己的项目的资源文件中。我们也可以使用从Google或者Mircosoft进行引用。这样可以节省我们自己的带宽,Google被党国屏蔽的厉害,这里我们只看一下引用微软的JQuery。

<head>
<script src="http:///ajax/libs/jquery/1.8.0/jquery.min.js">
</script>
</head>



使用谷歌或微软的 jQuery,有一个很大的优势:

许多用户在访问其他站点时,已经从谷歌或微软加载过 jQuery。所有结果是,当他们访问您的站点时,会从缓存中加载 jQuery,这样可以减少加载时间。同时,大多数 CDN 都可以确保当用户向其请求文件时,会从离用户最近的服务器上返回响应,这样也可以提高加载速度。


 实现全选功能,JQuery 提交表单
<script language="javascript" type="text/javascript">
$(function () {</p><p>    $("#reverse").click(function () {//反选
        // 注意这个地方我们使用的是prop来操纵属性而不是attr attr这种方式存在较多的bug 1.6时候强烈建议使用prop
        $("#formTable :checkbox").each(function () {
            //像这里用attr返回的是checked 而用prop返回的是true 或者 false
            $(this).prop("checked", $("#reverse").prop("checked"));
        });
    });
    
    var props = "${rc.getContextPath()}/ui/user/userprops/del?" ;
    $("#deleteAll").click(function(){
    // 删除提示框
 if(!confirm("确认要删除选中项吗?")){
  return false ;
 }
 // 删除选中项
    // 首先过滤出被选中的checkbox
    // 然后进行循环,将得到的值拼接成URL的参数部分
 $(":checkbox:gt(0):checked").each(function(){
     props = props + "ids=" + $(this).val() + "&";
 });
 // 将表单提交到指定的URL
 $('#search').attr("action", props).submit();;  
    });
});
在网页中动态显示时间
<html>
	<head>
		<title>网页中动态的显示系统日期时间</title>
		<script language="JavaScript">
			function startTime()   
			{   
				var today=new Date();//定义日期对象   
				var yyyy = today.getFullYear();//通过日期对象的getFullYear()方法返回年    
				var MM = today.getMonth()+1;//通过日期对象的getMonth()方法返回年    
				var dd = today.getDate();//通过日期对象的getDate()方法返回年     
				var hh=today.getHours();//通过日期对象的getHours方法返回小时   
				var mm=today.getMinutes();//通过日期对象的getMinutes方法返回分钟   
				var ss=today.getSeconds();//通过日期对象的getSeconds方法返回秒   
				// 如果分钟或小时的值小于10,则在其值前加0,比如如果时间是下午3点20分9秒的话,则显示15:20:09   
				MM=checkTime(MM);
				dd=checkTime(dd);
				mm=checkTime(mm);   
				ss=checkTime(ss);    
				var day; //用于保存星期(getDay()方法得到星期编号)
				if(today.getDay()==0)   day   =   "星期日 " 
				if(today.getDay()==1)   day   =   "星期一 " 
				if(today.getDay()==2)   day   =   "星期二 " 
				if(today.getDay()==3)   day   =   "星期三 " 
				if(today.getDay()==4)   day   =   "星期四 " 
				if(today.getDay()==5)   day   =   "星期五 " 
				if(today.getDay()==6)   day   =   "星期六 " 
				document.getElementById('nowDateTimeSpan').innerHTML=yyyy+"-"+MM +"-"+ dd +" " + hh+":"+mm+":"+ss+"   " + day;   
				setTimeout('startTime()',1000);//每一秒中重新加载startTime()方法 
			}   
			
			function checkTime(i)   
			{   
				if (i<10){
					i="0" + i;
				}   
				  return i;
			}  
		</script>
	</head>
	<body οnlοad="startTime()">
		当前时间:<font color="#33FFFF"><span id="nowDateTimeSpan"></span></font>	
	</body>
</html>




扩展jQuery 功能,限制只能输入数字
// 限制只能输入数字
$.fn.onlyNum = function () {
    $(this).keypress(function (event) {
        var eventObj = event || e;
        var keyCode = eventObj.keyCode || eventObj.which;
        if ((keyCode >= 48 && keyCode <= 57))
            return true;
        else
            return false;
    }).focus(function () {
    //禁用输入法
        this.style.imeMode = 'disabled';
    }).bind("paste", function () {
    //获取剪切板的内容
        var clipboard = window.clipboardData.getData("Text");
        if (/^\d+$/.test(clipboard))
            return true;
        else
            return false;
    });
};



$("#queryShipWeightFrom").onlyNum();
		$("#queryShipWeightTo").onlyNum();
		$("#queryShipLengthFrom").onlyNum();
		$("#queryShipLengthTo").onlyNum();

这个方法是不兼容的,window.clipboardData.getData("Text") 这个方法只在IE浏览器中有效,在其他浏览器中是不能被识别的。


Javascript 中的数值比较

关于javascript中的数值比较,碰到过奇怪的现象,

var oldPrice = 6
var newPrice = 34
 6 < 34 的结果是false ,
刚开始的时候这个让我很费解,其实这个地方比较的实际上是两个字符串,并不是两个数值,
我们使用 $("#xxx").val()  获取的值是String类型的,需要对其进行转换
( Number(oldPrice) < Number(newPrice) ) 这样显示的指定其类型就能得到正确的结果。

对我们来说js会自动的进行类型推断,但是这个推断的过程不一定十分的可靠,有些时候会出现这样或者那样出乎预料的结果,因此有些时候我们需要手动的指定类型,避免类似现象的发生。