今天看到有人在問答上問怎樣去動態(tài)取值附在option上,本來想解決的,但我發(fā)現(xiàn)。。。。沒有,我本來也笨,記不住,所以還是寫一下,讓大家可以看一下:
首先我這用的框架是SSM,代碼就開始了:
這是寫在前臺的方法里一個點(diǎn)擊事件進(jìn)入方法里我就不寫那么麻煩了直接ajax部分代碼:
$.ajax({//這就開始進(jìn)入ajax了
type:"get",//這個我也忘了,好像是類似格式吧,基本是死的不需要改動
dataType:"json",//這個是將字符串轉(zhuǎn)換成json格式
cache:false,//不曉得
data:"staffName="+staffName+"staffGender="+staffGender,//這兩個就是我要向后臺傳的值,之前已經(jīng)拿到了,staffName和Gender就是對象的屬性名,也可以隨意起
url:"%=request.getContextPath()%>/staffGet", //這個是路徑,staffGet是我在視圖層聲明的名字我想你們應(yīng)該知道m(xù)apping吧
complete:function(msg){ //如果你們僅僅只是向后臺傳值就不需要下面的代碼了,如果有返回值,比如name查找數(shù)據(jù)庫所有相同name并在前臺接收就需要下面的代碼
$("#read").html(""); //在這里是因?yàn)槲尹c(diǎn)擊一次就自動把查到的信息添加,會重復(fù),所以才有的在賦值之前把原本的信息刪除,請參考這串代碼倒數(shù)第二行你就懂了
$("[id=read]").remove();//這是把原本的ID刪除只有這樣才能清空原本的信息,ID存在會顯示一個空的td,這一行和上一行與該文章沒有關(guān)系,只是項(xiàng)目需要,可以沒有
var data = eval("(" + msg.responseText + ")"); //這就是將后臺傳過來的數(shù)據(jù)并交給data這個對象
$.each(data["list"],function(i,item){//遍歷這個數(shù)據(jù),我在后臺發(fā)送數(shù)據(jù)給的KEY是list,所以才有data["list"],變量名隨你傳送的map的KEY變化而變化詳情請看后臺代碼
var Name="tr id='"+item.staffId+"tr'>td id='"+item.staffId+"Name'>"+item.staffName+"/td>"; //這里我用一個字符串向tr和td賦值,ID最后一行改了是為了綠色注解部分
$("#staffget").append(Name); //然后將字符串插入表格中,具體插入方式可以參考ajax的API,有appendTo等多種方式,按情況參考
$("#"+item.staffId+"tr").attr("id","read"); //在這里將所有tr的ID改成read,為了我點(diǎn)擊多次從后臺取值不會出現(xiàn)多次重復(fù),點(diǎn)一次刪除所有Id為read的
前臺代碼缺括號,有)},具體缺哪個自行查找
現(xiàn)在開始后臺代碼,因?yàn)閼械谜揖碗S意找了一個
@RequestMapping("/JurisdictionGet") //這里就是我在之前ajax里url的路徑,詳情請看ajax--url我有解釋
@ResponseBody //這是因?yàn)槭褂昧薬jax必須要聲明的注解
public Object JurisdictionGet(Jurisdiction jurisdiction) throws Exception //因?yàn)槭褂昧薬jax所以方法必須使用Object類型的方法,參數(shù)列表就是前臺發(fā)送回來的 數(shù)據(jù),如果想在后臺用對象接收,前臺傳值時(shí),定義的參數(shù)名必須是你這個對象的屬性名,才可以像我這樣接收,如果不同就用String接收,但參數(shù)名必須和前臺定義的一樣
{
MapString, Object> map = new HashMapString, Object>(); //這個map是在前臺需要有返回值時(shí)存在的,獲取數(shù)據(jù)庫的值通過它傳給前臺用key取值
map.put("list", JurisdictionServices.JurisdictionGet(jurisdiction)); //定義的KEY為list,value里的數(shù)據(jù)是我調(diào)用的Services層,主要邏輯都寫在哪里,就不發(fā)了,和以前大家的用法都差不多,因?yàn)槭遣槎鄠€,所以返回的是LIST數(shù)據(jù),懂吧?不懂 可以在評論問我,我回復(fù)大家
return map;//將這個map發(fā)送出去,再往后的參考前臺就行,解釋的很清楚了,不懂的可以問我,我只要會,就一定解 答大家
}
以上這篇ajax動態(tài)獲取數(shù)據(jù)庫中的數(shù)據(jù)方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- AJAX和jQuery動態(tài)加載數(shù)據(jù)的實(shí)現(xiàn)方法
- 基于$.ajax()方法從服務(wù)器獲取json數(shù)據(jù)的幾種方式總結(jié)
- JS使用ajax從xml文件動態(tài)獲取數(shù)據(jù)顯示的方法
- Ajax獲取數(shù)據(jù)然后顯示在頁面的實(shí)現(xiàn)方法
- 利用js將ajax獲取到的后臺數(shù)據(jù)動態(tài)加載至網(wǎng)頁中的方法
- Ajax動態(tài)加載數(shù)據(jù)庫示例