我分了3个页面:
1、显示
2、js
3、服务器端处理的
显示(index.php):
<html>
<head>
<script type="text/javascript" src='jQuery.js'></script>
<script type="text/javascript" src='js.js'></script>
</head>
<body>
<div id='disp'></div>
<button id='btn'>enter</button>
</body>
</html>
js(js.js):
$(document).ready(function(){
$("#btn").click(function(){
$.post('server.php',{q:'a'},function(result){
$('#disp').html(result)
})
});
});
服务器那边的(server.php):
<?php
$q=$_POST['q'];
echo $q;
echo "<input type='button' value='btn'>";
?>
jQuery只是个js文件,下载来随便一扔就好了,路径别搞错就行;
js中:
1、btn是id,所以前面加#,如果是class就加.;
2、.html改成.val()就是取得对应东西的value值,.val(x)就是赋值。
效果图:
before
[enter]
after
a[btn]
[enter]
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
此外1:
这个js里的#xxxxx或者.xxxxxx什么的在一开始就根据id或者class搞好了选择器了。所以如果局部刷新的那部分里有些东西有id,那么这个js里跟这个id绑定的事件是不会起作用的。因为人家一开始问“有这个id的吗?”的时候你不在,人家问完了事件都绑完了你才来,那么就没你什么事了。
所以么我现在遇到这种情况,就直接在刷新出来的那东西的标签里写上οnclick=xxxx()了而不是用jquery那种形式去绑。那这么做么就又无法把事件和显示页面分离开来了,不知道主流方法是怎么搞的。
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
此外2:
如果绑的是submit事件,那么js里事件结束后要返回false,不然它自己会那个真的submit上去了。