看不懂你的代碼~ 寫得太爛
成都創(chuàng)新互聯(lián)是專業(yè)的鹽湖網(wǎng)站建設(shè)公司,鹽湖接單;提供做網(wǎng)站、網(wǎng)站建設(shè),網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行鹽湖網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
先用 url 傳參 單獨(dú)執(zhí)行一下 你的ajax 頁面。 如果沒有問題,在去檢查你的js
給你個(gè)教學(xué)般的例子吧:
ajax 向 php 傳遞一個(gè)用戶的 ID 值,php 通過查詢數(shù)據(jù)庫,返回該ID用戶的用戶名和年齡和性別。
ajax 向 php 傳值用POST的方式,php 向 ajax 返回的數(shù)據(jù),用 json 格式。
==================================================================
[ ajax.html ]
----------------------
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""
html xmlns=""
head
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
titlejQuery_AJAX_PHP/title
script type="text/javascript" src="js/jquery.js"/script
script type="text/javascript"
function ajaxAction(userid) {
$.ajax({
url:"person.php",
type:"POST",
data:"userid="+userid,
dataType:"json",
success:function(person){
if(person=='undefined') {
alert("參數(shù)錯誤");
} else {
$('#userName').text(person.name);
$('#userGender').text(person.gender);
$('#userAge').text(person.age);
}
}
});
}
/script
/head
body
p用戶名:span id="userName"/span/p
p性別:span id="userGender"/span/p
p年齡:span id="userAge"/span/p
pa href="#" onclick="javascript:ajaxAction(111)"點(diǎn)我吧/a/p
/body
/html
==============================================================
[ person.php ]
--------------------
?php
$userid=$_POST['userid'];
if($userid==''||$userid=='0') {
echo 'undefined';
} else {
//查詢數(shù)據(jù)庫并整理數(shù)據(jù)
$user = Array(
'name' = '張三李四',
'gender' = '男的~~~吧',
'age' = '反正老大不了'
);
echo json_encode($user);
}
?
=====================================================================
這里有個(gè)很重要的問題:就是如果你傳遞的參數(shù)或者值,是中文的,那你的頁面文件就最好選擇UTF-8的編碼,不然你會很難搞的。
我這里的例子里的兩個(gè)文件都是 utf8 編碼!!
最近在玩Thinkphp,廢話不多說,說正事.
客戶端js提交代碼
1 $.post('',{username : document.getElementById('username').value,content : document.getElementById('content').value,},function (data){console.log(data);alert('ok');});
主要是提交兩個(gè)表單項(xiàng)的內(nèi)容到handle,如果成功返回就執(zhí)行function函數(shù)彈出一個(gè)ok
ps:這段代碼不是標(biāo)準(zhǔn)的jQuery的寫法,標(biāo)準(zhǔn)的應(yīng)該是
$( 'input[name=username]' ).val()
$( '#username' ).val()
服務(wù)器端腳本
1 public function handle(){
2 if (!isAJAX) {
3 halt('請求有誤');
4
5 } //else
6 // //echo '請求成功';
7 // // var_dump(I('post.'));
8 $wi=M('wish');
9 $data['wi_name']=I('username');
10 $data['wi_content']=I('content');
11 $data['wi_time']=time();
12 $result=$wi-data($data)-add();
13 // var_dump($result);
14 if ($result) {
15 // $this-success('插入成功');
16 // $this-ajaxReturn('110','插入成功',1);
17 $dataReturn['status']=1;
18 $dataReturn['info']='the post is ok';
19 $this-ajaxReturn($dataReturn,'json');
20 }else{
21 halt('插入失敗');
22 }
23
24 }
但是數(shù)據(jù)提交成功,一直沒有彈窗,也就是回調(diào)函數(shù)一直沒有執(zhí)行.找了半天,以為是json格式有問題,才知道是我注釋的那段代碼
//else
// //echo '請求成功';
// // var_dump(I('post.'));
我只說jquery的吧。
你的表單中添加分類和提交標(biāo)題name和ID重復(fù)。
代碼如下 copyleft by createindex
---------------------------華麗的分割線-----------------------------------
form action="" method="post"
分類列表:select name="select" id="select"/select
分類名稱:input type="text" name="fenlei" id="fenlei" /
input type="submit" id="button_add" value="添加分類"
標(biāo)題:input type="text" name="biaoti" id="biaoti" /
input type="submit" id="button_title" value="提交標(biāo)題" /
/form
script type="text/javascript" src=""/script
script language="javascript" type="text/javascript"
$(function(){
//添加分類綁定單擊事件
$("#button_add").click(function(){
var fenlei = $("#fenlei").val();//取得表單的值
//Ajax post數(shù)據(jù)
$.ajax({
type: "POST",//Ajax請求為post
url: "some.php",//ajax請求URL 腳本地址
data: "fenlei="+fenlei, //傳遞的值
success: function(data){ //回調(diào)函數(shù) 這里的data你可以返回HTML也可以是JSON 為了簡單你返回HTML就可以了。
$("#select").html("").html(data);//將返回的列表插入分類.
//你只需要在后臺腳本返回 option value="xx"sdfsdf/option之類的可以了。
}
});
});
});
/script
---------------------------華麗的分割線-----------------------------------
input type="submit" id="button_add" value="添加分類"
修改為
input type="button" id="button_add" value="添加分類"
---------------------------華麗的分割線-----------------------------------
不知道你什么意思。 Jquery的選擇器選擇你要的DOM節(jié)點(diǎn)操作就可以了。怎么控制那是你自己怎么做的問題。像這種問題自己看文檔就能寫出來的。
//這個(gè)正好手頭正在做的一個(gè)項(xiàng)目中用到,提供思路,可以自由擴(kuò)充
//在頁面加載的時(shí)候注冊一下?,就是給要點(diǎn)擊的地方添加事件或者是屬性
//頁面源碼
table
tr
td?class="canChange"點(diǎn)擊這里會出現(xiàn)文本框/td
/tr
/table
//JS
$(document).ready(function(){
td_Click();
})
//點(diǎn)擊事件
function?td_Click()?{
$(".canChange").click(function?()?{
var?td?=?$(this);
//所點(diǎn)文本框的id
var?id?=?$(this).attr("id")
var?txt?=?$.trim(td.text());
var?input?=?$("input?class=\"myinput\"?id='new'??type='text'value='"?+?txt?+?"'style=\"width:80%;heigth:100%;\"/");
td.html(input);
input.click(function?()?{?return?false;?});
//獲取焦點(diǎn)?
input.trigger("focus");
//文本框失去焦點(diǎn)后提交內(nèi)容,重新變?yōu)槲谋?
input.blur(function?()?{
//?var?newtxt?=?$(this).val();
var?newtxt?=?$("#new").val();
//判斷文本有沒有修改?
if?(newtxt?!=?txt)?{
if?(newtxt?==?null?||?newtxt?==?"")?{
td.html(txt);
}
else?{???????
//表示已經(jīng)修改
$.post(.......)//提交
td.html(newtxt);
}
}
else?{
td.html(txt);
}???????????
});
});
}
刷新頁面可以通過?JQ的?Fresh方法來實(shí)現(xiàn),
或者是是控件刷新來實(shí)現(xiàn),
比如??$("#btnSearch").click();這樣通過JQ調(diào)用按鈕點(diǎn)擊,實(shí)現(xiàn)重新讀取數(shù)據(jù)
=================望采納!
第一步,引入jquery,各樣的版本都有,搜一下,下載下來
script?type="text/javascript"?src="images/jquery-1.4.4.min.js"/script
第二步?局部異步刷新的HTML添加ID,比如
div?id="shuaxin"/div//需要刷新的內(nèi)容
a?href="#"?onclick="Refresh()"刷新/a//點(diǎn)擊刷新
第三步?設(shè)置路徑,參數(shù)等
script
function?Refresh()
{
$.ajax({
async:?false,
url:?"a.php",//PHP文件的地址
type:?"post",//get和post發(fā)送方式
data:?{?id:"1",cid:"2"},//參數(shù),沒有參數(shù)可以不要,現(xiàn)在是這樣(a.php?a=1$cid=2)
success:?function?(data)
{
$("#shuaxin").html(data);//data是返回的數(shù)據(jù),根據(jù)ID添加到shuaxin的div里
}
});
}
/script
第四步,這是PHP返回?cái)?shù)據(jù)?a.php
?php
$id=$_REQUEST['id'];//接收id參數(shù),沒有參數(shù)就不用寫
$cid=$_REQUEST['cid'];//接收cid參數(shù),沒有參數(shù)就不用寫
//做一些你想做的操作,
echo?????//返回給html
?
大概就是這個(gè)樣子,沒測試。