jQuery获取文件选择输入框的扩展名

var file=$("input[name='file']").val()
var filename=file.replace(/.*(\/|\\)/, "");  //文件名
var fileExt=(/[.]/.exec(filename)) ? /[^.]+$/.exec(filename.toLowerCase()) : '';  //扩展名

今天在用ajaxfileupload时,遇到一个要刷新一次页面才能再次上传,用live()方法来绑定<input type="file">的change事件就能够解决?直接$("xxx").change();只能调用一次,据闻是IE浏览器的安全性。后来终于找到解决方案了。IE浏览器下<input type="file">选择完成自动提交的问题,在每次处理完成后把<input type="file" />替换成原来的代码,然后随便加个不同的属性。如本例中添加了title。

    var count = -1;
$("#upload").live("change", function () {
count++;
$.ajaxFileUpload(config);
$("#upload").replaceWith("<input type='file' id='upload' name='upload' style='position:relative; top:0px; left:-240px; width:346px; height:46px; opacity:0; filter: Alpha(Opacity=0); cursor:pointer; title=" + count + "' />");
})

jQuery根据生日计算年龄,星座,生肖的实例:

<html>
<head>
<title></title>
<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script> <script type="text/javascript">
//根据输入的生日自动获取星座,生肖和年龄。
var year = new Array("猪", "鼠", "牛", "虎", "兔", "龙", "蛇", "马", "羊", "猴", "鸡", "狗");
jQuery(function () {
$("#Birthday").blur(function () {
setTimeout(function () {
var strHtml = "";
var date = new Date($("#Birthday").val().replace(/-/g, "/"));
var con = getxingzuo(date.getMonth() + 1, date.getDate());
strHtml += "你的星座是:" + con;
var zodiac = year[(parseInt(date.getFullYear()) + 9) % 12];
strHtml += "<br/>你的生肖是:" + zodiac;
var Age = new Date().getFullYear() - date.getFullYear();
strHtml += "<br/>你的年龄是:" + Age;
$("#div1").append(strHtml);
}, 200);
})
})
function getxingzuo(month, day) {
var d = new Date(1999, month - 1, day, 0, 0, 0);
var arr = [];
arr.push(["魔羯座", new Date(1999, 0, 1, 0, 0, 0)])
arr.push(["水瓶座", new Date(1999, 0, 20, 0, 0, 0)])
arr.push(["双鱼座", new Date(1999, 1, 19, 0, 0, 0)])
arr.push(["牡羊座", new Date(1999, 2, 21, 0, 0, 0)])
arr.push(["金牛座", new Date(1999, 3, 21, 0, 0, 0)])
arr.push(["双子座", new Date(1999, 4, 21, 0, 0, 0)])
arr.push(["巨蟹座", new Date(1999, 5, 22, 0, 0, 0)])
arr.push(["狮子座", new Date(1999, 6, 23, 0, 0, 0)])
arr.push(["处女座", new Date(1999, 7, 23, 0, 0, 0)])
arr.push(["天秤座", new Date(1999, 8, 23, 0, 0, 0)])
arr.push(["天蝎座", new Date(1999, 9, 23, 0, 0, 0)])
arr.push(["射手座", new Date(1999, 10, 22, 0, 0, 0)])
arr.push(["魔羯座", new Date(1999, 11, 22, 0, 0, 0)])
for (var i = arr.length - 1; i >= 0; i--) {
if (d >= arr[i][1]) return arr[i][0];
}
}
</script>
</head>
<body>
<div id="div1" style="width:200px;height:200px;">
<input type="text" id="Birthday" value="请输入你的生日!" />
<input type="button" value="开始计算" />
</div>
</body>
</html>

jQuery判断元素下是否有另一指定元素

  $(this).has("p").length > 0     //此句代码的意思是,含有P的当前元素的数量,如果含有P则为1,不含有P则为0。因为$(this)肯定是1,给它加了个条件,含有P的$(this)要是是1,要么是0 。

  另外一种方法就是用find

  $(this).find("p").length > 0  //此句代码的意思是,含有的P子元素数量是否大于0

<head>
<script src="jquery-1.7.1.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$("#div1").click(function () {
if ($(this).has("p").length > 0) {
alert("div1有p子元素s");
}
})
})
</script>
</head>
<body>
<div id="div1">
<p>我是一个P</p>
</div>
</body>

jQuery判断当前元素是隐藏还是显示

$(this).is(":hidden");  //如果元素是隐藏的话,则返回true

is挺好用的,他能够用jQuery选择器作为参数,特别是跟jQuery里面的选择器里面那些以冒号开头的筛选符配合使用,实现各种各样的判断。如: ":checked,:hidden"等等。给个例子:

<head>
<script src="jquery-1.7.1.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$(":button").click(function () {
if ($(this).is(":button")) {
alert("我是一个按钮!");
}
if ($("#check1").is(":checked")) {
alert("我是被选中的");
}
if ($(".p1").is(":visible")) {
alert("p1是可见的");
}
})
})
</script>
</head>
<body>
<div id="div1">
<p class="p1">我是一个p</p>
<input id="check1" type="checkbox" value="" />复选框
<input type="button" value="确认" />
</div>
</body>

jQuery开发经验实例笔记的更多相关文章

  1. jQuery Ajax 实例 ($.ajax、$.post、$.get)

    jQuery Ajax 实例 ($.ajax.$.post.$.get) 转 Jquery在异步提交方面封装的很好,直接用AJAX非常麻烦,Jquery大大简化了我们的操作,不用考虑浏览器的诧异了. ...

  2. SVN版本库(访问权限)配置实例笔记

    http://blog.csdn.net/zjianbo/article/details/8578297 SVN版本库(访问权限)配置实例笔记 本系列文章由ex_net(张建波)编写,转载请注明出处. ...

  3. JavaScript强化教程——jQuery AJAX 实例

    什么是 AJAX?AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML).简短地说,在不重载整个网页的情况下,AJAX 通过后台加载数据 ...

  4. jQuery AJAX实例

    <html><head><title>jQuery Ajax 实例演示</title></head><script language= ...

  5. jQuery Ajax 实例 ($.ajax、$.post、$.get)【转载】

    本文转载自:http://jun1986.iteye.com/blog/1399242 Jquery在异步提交方面封装的很好,直接用AJAX非常麻烦,Jquery大大简化了我们的操作,不用考虑浏览器的 ...

  6. jQuery Ajax 实例 ($.ajax、$.post、$.get)转

    Jquery在异步提交方面封装的很好,直接用AJAX非常麻烦,Jquery大大简化了我们的操作,不用考虑浏览器的诧异了. 推荐一篇不错的jQuery Ajax 实例文章,忘记了可以去看看,地址为:ht ...

  7. jQuery 验证实例(shopnc二次开发)

    shopnc 商家用户实现添加用户与前台用户分离, jQuery 验证实例 equalTo:等于 <div id="saleRefund" show_id="1&q ...

  8. 一个简单的jQuery插件开发实例

    两年前写的一个简单的jQuery插件开发实例,还是可以看看的: <script type="text/javascript" src="jquery-1.7.2.m ...

  9. 锋利的jQuery幻灯片实例

    //锋利的jQuery幻灯片实例 <!DOCTYPE html> <html lang="en"> <head> <meta charse ...

随机推荐

  1. C51工具是怎么进行覆盖分析的

    C51工具针对8051微控制器的有限存储器资源进行了优化设计. 为了最有效地利用存储器,根据一个很容易解释的方法,自动变量和函数参数在存储器中均进行覆盖处理. 首先,连接器根据源程序生成调用树.例如: ...

  2. 转:完善eclipse+pdt作php开发中的代码提示能力

    在eclipse开发中 ,可能由于各种原因导致项目文件(eclipse内置)丢失或错乱, 因而, 失去一些能力.. 以下是经过被痛苦折磨后查阅总结的一点东西 设置完下面内容, 支持以下特性 PHP: ...

  3. vijos1781 同余方程

    描述 求关于x的同余方程ax ≡ 1 (mod b)的最小正整数解. 格式 输入格式 输入只有一行,包含两个正整数a, b,用一个空格隔开. 输出格式 输出只有一行,包含一个正整数x0,即最小正整数解 ...

  4. MVC后台绑定dropdownList

     public ActionResult Index()         {             List<SelectListItem> items = new List<Se ...

  5. UITableView系列(1)---Apple缓存池机制

    一.概述 关于UITableView的基本使用, 其实十分简单.但是做App最重要的之一就是细致,技术方面要做到细致, 必须深入了解底层, 才能做出优化让程序跑得更快.那么这一系列文章从我实际项目中获 ...

  6. SQL server 中 COUNT DISTINCT 函数

    目的:统计去重后表中所有项总和. 直观想法: SELECT COUNT(DISTINCT *) FROM [tablename] 结果是:语法错误. 事实上,我们可以一同使用 DISTINCT 和 C ...

  7. Hive 12、Hive优化

    要点:优化时,把hive sql当做map reduce程序来读,会有意想不到的惊喜. 理解hadoop的核心能力,是hive优化的根本. 长期观察hadoop处理数据的过程,有几个显著的特征: 1. ...

  8. phpcms 内部检测用户名长度更改

    <?php /*1.js部分ajax就不说了,很好改...把min  max更改下就行了具体在三个地方更改: inputValidator({min:2,max:40, //默认是20 1.会员 ...

  9. sleep()函数的的意义

    ===============WINDOWS平台下:====================== 关于VOID Sleep(DWORD dwMilliseconds);函数,许多人都觉得,它是告诉系统 ...

  10. truncate 、delete与drop三者的异同

    相同点: 1.truncate和不带where子句的delete.以及drop都会删除表内的数据. 2.drop.truncate都是DDL语句(数据定义语言),执行后会自动提交. 不同点: 1. t ...