作者tomin (stuffy)
看板Ajax
标题Re: [ajax] jQuery有可以即时编辑、新增、删除的pl …
时间Sat Sep 19 22:38:25 2009
※ 引述《andreli (小狗跟正妹是我的死穴)》之铭言:
: 因为小弟我对JavaScript实在没有很熟,
: 搞来搞去只能使用伪装的Ajax来处理被删除的资料,
: <div id="my_show">
: 内容
: </div>
: 删除我就只能利用onClick的事件把display变成none, 然後再使用jQuery到php档案里
: 删除资料。
: 新增则是用append的方式加在原来内容後面...自己假装是Ajax...
: 实际上最後一笔的资料并不是从资料库里读出来的...
: 但是好像有些问题会导致IE出现无法判定字串常数的结尾这类的错误讯息,
: 我想应该是我没把回传的资料用xml或json整理好的原因。
: 所以我想我还是不能这样继续伪装我的Ajax...
你原本的办法很好啊,本来就该这样做吧,虽然我不知道IE是怎麽回事。
理想中,应该都是先完成使用者的动作,呈现结果,再偷偷更新後端的资料。
不过也要看情况,有时候必须让使用者等待一下,有calltback後再呈现结果。
使用者送出资料前,系统应该检查资料送到後端不会有问题,才让资料送出,
也才让结果呈现。万一不幸後端出现错误,或许要考虑出现警告,或还原先前的状况。
: 离题了, 所以今天早上上网Google後发现了jeditable这个jQuery的套件,
: 差了即时新增和删除这两个功能就超完美了,
: 不知道有没有先进使用过这样的套件,
: 可以让我想显示资料库的资料和新增删除编辑都没有postback的感觉。
: 因为真的找不到资料所以只好上来求救大家, 拜托了, 谢谢!
: 或是如果没有这样的套件,
: 可以跟我说一下使用jQuery如何在新增或删除後reload的方法吗?
: 因为我不知道如何在一个div里reload原先show出来的data。
我看不太懂问题。
如果你知道怎麽用ajax load data,新增、删除後的load法还是一样啊,
呼叫原本的load data方法,不就load进来了?!
那我示范如何在一个div里,reload flickr最新的相片!
改编自jQuery文件与一个许久前在网路上搜寻到的code。
Demo:
http://noking.googlepages.com/flickr.html
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<script type="text/javascript"
src="
http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<title>JSON Flickr Feed Test</title>
</head>
<body style="margin:2px">
<div id="refresh" style="margin-bottom:4px">
<input type="button" value="Refresh Photos">
</div>
<!-- 要让images这个div reload照片!-->
<div id="images"></div>
<script type="text/javascript">
function flickrFeed() {
$.getJSON("
http://www.flickr.com/services/feeds/
photos_public.gne?format=json&jsoncallback=?",
function(json){
$("#images").html("");//reset
$.each(json.items, function(i,item){
var images=
[
'<span style="margin:4px;">',
'<a href="', item.link, '" title="', item.title, '">',
'<img src="', item.media.m, '" border="0" />',
'</a>',
'</span>'
].join('');
$(images).appendTo("#images");
if ( i == 7 ) return false;
});
});
}
//绑定click,让(第二次以後的)资料能够reload於div images
$("#refresh").bind("click",flickrFeed);
flickrFeed();//load第一次资料
</script>
</body>
</html>
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.116.40.183
※ 编辑: tomin 来自: 122.116.40.183 (09/19 22:47)