初学者全面接触学习jquery(译文)(5)
http://www.itjxue.com 2015-08-06 23:23 来源:未知 点击次数:
- $('.saveButton'.click(function(){saveChanges(this, false;});
- $('.cancelButton'.click(function(){saveChanges(this, revert;});
为两个按钮定义click事件。
- .mouseover(function() {
- $(this.addClass("editable";
- })
- .mouseout(function() {
- $(this.removeClass("editable";
- });
定义鼠标移入和移走事件。
接着定义saveChanges函数
- function saveChanges(obj, cancel { ... }
如果cancle是false的话,那就意味着要保存编辑后的内容
- if (!cancel {
- var t = $(obj.parent().siblings(0.val();
- // ...
- }
parent()对应的是input外面的div,siblings对应的是相邻的dom,0指的是前面的dom,也就是
- <textarea rows="10" cols="60">' + $(this).html() + '</textarea>
接下来该来点关键的了
- $.post("test2.php",{content: t},function(txt){
- alert(txt;
- });
jquery的ajax方法,.post表示以post方式提交,第一个参数是目标页面,在这里就是”test2.php”,第二个参数是提交的内容,最后是回调函数。txt是服务端传递过来的参数。
- else {
- var t = cancel;
- }
如果cancle不为false的话,就执行revert()方法。
- $(obj.parent().parent().after('<div id="editInPlace">'+t+'</div>'.remove() ;
移走textarea和button,恢复原状。
最后再调用setClickable方法就可以了,所有的js
- $(document.ready(function(){
- setClickable();
- });
- function setClickable() {
- $('#editInPlace'.click(function() {
- var textarea = '<div><textarea rows="10" cols="60">'+$(this.html()+'</textarea>';
- var button = '<div><input type="button" value="SAVE" class="saveButton" /> OR <input type="button" value="CANCEL" class="cancelButton" /></div></div>';
- var revert = $(this.html();
- $(this.after(textarea+button.remove();
- $('.saveButton'.click(function(){saveChanges(this, false;});
- $('.cancelButton'.click(function(){saveChanges(this, revert;});
- })
- .mouseover(function() {
- $(this.addClass("editable";
- })
- .mouseout(function() {
- $(this.removeClass("editable";
- });
- };
- function saveChanges(obj, cancel {
- if(!cancel {
- var t = $(obj.parent().siblings(0.val();
- $.post("test2.php",{
- content: t
- },function(txt){
- alert( txt;
- });
- }
- else {
- var t = cancel;
- }
- if(t=='' t='(click to add text)';
- $(obj.parent().parent().after('<div id="editInPlace">'+t+'</div>'.remove();
- setClickable();
- }
(责任编辑:IT教学网)
上一篇:学习JS之简单语句的写法