标签归档:jquery

在表单后边显示html页面的表单名字的js代码

有时候需要在页面上直接看到表单里面元素的名字,下面的代码可以将名字显示在页面上,便于查看。
其中用到了jqeury的after,没有的需要用其他方式i来写。

for(var i=0;i<document.form1.elements.length;i++){
if (i>0 && document.form1.elements[i].name!=document.form1.elements[i-1].name) {
$("*[name='"+document.form1.elements[i].name+"']").after(document.form1.elements[i].name);
}
}

ie用jquery.form进行ajax提交没反应

用jquery form插件,进行ajax提交,本来可以用,好好地,突然发现,firefox,opera等可以提交,ie的success函数运行了。
花了三个钟头,反复查,发现,原来是改了处理页面的返回头信息。
加上了 application/x-javascript ,ie8就不干活了。
如果是text/html,就行,或者不指定也行。
算bug不?让我问候一下写这段代码的ie开发人员吧。

ajax的头信息,编码看来都要注意哎。

如何跳出jquery的each?

jquery再遍历选定的对象时候用each比较方便。有种应用是找到里面符合条件的对象后,要跳出这个循环。
javascript的跳出循环一般用break.
同事遇到这个问题,下意识 的用了break,想跳出这个循环。结果报错

SyntaxError: unlabeled break must be inside loop or switch

经查,应该用一个

return false;

continue是跳出当前循环,继续下一个循环。

jquery实现ajax投票一例

其实是很简单的,一个或多个页面有一堆摄影作品,用户点击投票,相应的作品数量增加1.

前台jsp部分的代码如下:

...
票数:<span id="i<%=id%>"><%=vote_number%></span><br/>
    <a onclick=myvote(<%=id%>); href='javascript:;'">投票</a>
...

js部分的代码如下

function myvote(id){
	$.post("vote.jsp", { id: id },
  function(data){
  	  eval("var data="+data);
    if (data.issucc=="0"){
    	alert(data.mess)
    }else{
    	//alert("更新页面");
    	$("#i"+data.myid).html(data.votenum);
    	}
  });
}

后台返回的json数据如下

{issucc:<%=issucc%>,mess:”<%=mess%>“,votenum:<%=votenum%>,myid:<%=myid%>}

issucc:是否成功
mess:信息,主要是错误信息,比如没登录,超过限制等
votenum:投票后的得票总数
myid:投票的id,用于更新页面的投票数。

jQuery 的图片幻灯片插件imgslideshow

有一个wp-magazine的theme,用了一个prototype的glider插件。但是偶不会用prototype,会一点jquery,并且用jquery的应用越来越多,比如使用的相册就是用的jquery,想统一一下JavaScript的类库。所以一直想找一个jquery类似效果的插件。除了这个之外,又发现一个不错的,有点像taobao首页广告的链接。
代码也很简单,一段简单的css,一个jquery+一个js就行了。
demo请点击这里,我稍微做了修改,原来是要点击数字,变化,现在鼠标移动到上边就可以变化图片了。

python版本的jquery

jquery在做html内容提取,分析的时候很方便。而python做类似的工作就麻烦一点,原来我都是用正则表达式或者HtmlParser的。
两者用着都不是太爽,今天发现了一个好东西 pyquery ,一个类似jquery的python库。
摘抄一段使用说明

>>> from pyquery import PyQuery as pq
>>> from lxml import etree
>>> d = pq("<html></html>")
>>> d = pq(etree.fromstring("<html></html>"))
>>> d = pq(url='http://google.com/')
>>> d = pq(filename=path_to_html_file)

Now d is like the $ in jquery:

>>> d("#hello")
[<p#hello.hello>]
>>> p = d("#hello")
>>> p.html()
'Hello world !'
>>> p.html("you know <a href='http://python.org/'>Python</a> rocks")
[<p#hello.hello>]
>>> p.html()
'you know <a href="http://python.org/">Python</a> rocks'
>>> p.text()
'you know Python rocks'

简单吧,安装也很简单
下载
http://pypi.python.org/packages/source/p/pyquery/pyquery-0.3.tar.gz
解压缩
python setup.py install
就可以了,可能要安装ezsetup
现在的版本是0.3,还有一些jquery的东西没有实现,比如:radio,:password,以及一些ajax的功能,但是已经够用了,强烈推荐。
赶紧试试吧。

还有一个BeautifulSoup,也推荐一下

jquery货币数值排序

jquery是个好东西,现在有很多基于它的plugin,tablesorter 就是一个。
上面有好多例子,就不转贴了。最近做了一个小东西,用到了它。
因为是财务的东西,金额用到了千分位,就是每多三位,加一个逗号。原来用都是按照数字来的,加了这个逗号之后,tablesorter不认为它是数字了,他认为234.00比1,234.53大。这也难怪,看了例子,如果是这种货币格式,前面如果是$符号的话,这种格式排序是没问题的。
仔细看了一下文档,原来人家已经考虑到了这样的问题,加下面代码就可以了。

$("#myTable").tablesorter({
	headers: { 4: {sorter:"currency"}}
});

测试通过

另:推荐一篇关于中国教育讨论的文章

上百个让你事半功倍的jquery插件

jQuery是一个了不起的javascript库,它可以是我们用很少的几句代码就可以创建出漂亮的页面效果。从网站的方面说,这使得javascript更加有趣。

很多jquery爱好者开发了基于jquery的插件,在这里
发现作者收集好多jquery的插件,转贴过来,给大家分享。

File upload-文件上传

Ajax File Upload
jQUploader
Multiple File Upload plugin
jQuery File Style
Styling an input type file
Progress Bar Plugin

Form Validation-表单验证

jQuery Validation
继续阅读

jquery选择例子3

选取一个name为”S_03_22″的input text框的上一个td的text值
$("input[@name=S_03_22]").parent().prev().text()

名字以”S_”开始,并且不是以”_R”结尾的
$("input[@name^='S_']").not("[@name$='_R']")

一个名为radio_01的radio所选的值
$("input[@name=radio_01][@checked]").val();

没有某个属性的某种元素,例如没有alt的img
$("img").not('[alt]')

jquery 3例

jquery使用2例
1.把

0

里面的数值增加1
$(“#a01”)[0].innerHTML=parseInt($(“#a01”)[0].innerHTML)+1;
2.所有的checkbox有多少个选上的
var all_check=$(“input[@type=’checkbox’][@checked]”);
alert(all_check.length+”个选中”);
3.给每个checkbox增加click事件

 
$("input[@type='checkbox']").click(function(){
                                Redirect_login()
                                return true;
                            });