2014-05-13 58 views
-1

場景:我登錄到管理員面板。管理員是在CodeIgniter中完成的。是否可以將數組轉換爲jQuery對象?

我有一個用戶列表

user1 
user2 
user3 
etc... 

的foreach用戶我有一個關於隱藏信息隱藏的div他們

<a href="#">user1</a> 
<div class="info" style="display:none;"> 
info about user1 
</div> 

<a href="#">user2</a> 
<div class="info" style="display:none;"> 
info about user2 
</div> 

<a href="#">user3</a> 
<div class="info" style="display:none;"> 
info about user3 
</div> 

等等

上面被包裹在一張表格中。

當我點擊一個用戶最近的info-class-div顯示。有關每個用戶的信息應該可編輯並保存到數據庫。

<a class="moreinfo-user" href="#">User1</a> 

<div class="info" style="display:none;"> 
    Namn:<input type="text" name="username"> 
    Phone:<input type="text" name="phone"> 
<input class="save-houseinfo" data-userid="<?php echo $user_id;?>" value="Save to db" />       
</div> 

首先,我以爲我可以一個請求後,但隨後姓名和電話(NRS)將與在該形式與其他東西一起發佈,似乎這樣的浪費。

我的代碼是目前(jQuery的):

$(".moreinfo-user").click(function(e){ 

    //Save info for member  
    var user_id = $(this).attr('data-userid');  
    var parent_div = $(this).parent('.info'); 

    var info_name = parent_div.find('.house_name').val(); 
    var info_phone = parent_div.find('.house_phone').val(); 


    var use_url = CI.base_url + 'membership/ajax_membership/quicksave/' 
     + encodeURIComponent(house_name) + '/' ' 
     + encodeURIComponent(house_phone); 


    var saveInfo = $.ajax({ 
     type: 'GET', 
     url: use_url,        
     dataType: 'json' 
    }); 

    saveInfo.done(function(data) { 
     alert('done'); 
     $(this).css('font-weight', 'bold').css('background', 'yellow').val('Sparat') 
     $(this).parent().fadeOut(4000); 
     alert(data); 
    }); 

    saveInfo.fail(function(ts) { 
     alert(ts.responseText); 
    }); 

}); 

我不知道如何發送數據...這工作...

var use_url = CI.base_url + 'membership/ajax_membership/quicksave/' 
      + encodeURIComponent(info_name) + '/' ' 
      + encodeURIComponent(info_phone); 

但我想發送一個像這樣的序列化對象:

var info = {} 
info.user_id = user_id; 
info.name = info_name; 
info.phone = info_phone; 
var use_url =  var use_url = CI.base_url + 'membership/ajax_membership/quicksave/' 
       + info.serialize(); 

但是然後在console.log它說serialize()不是一個函數。我認爲這個信息不是一個jQuery對象 - 這就是爲什麼我得到錯誤。有沒有一種方法可以將信息轉換爲jQuery對象?

我只想虎視眈眈控制器中的數據是這樣的:

public function quicksave($info_data) { 
    //save stuff to db 
    echo json_encode('saved info about user with user id ' . $info_data['user_id']); 
} 
+0

只是使用JavaScript對象 – Ejaz

+0

我認爲你不能'連載( )'這樣的對象從jQuery - >它可以作用於已選擇單個窗體控件的jQuery對象,如,