//雙擊觸發事件 $("tbody>tr>td").dblclick(function(){ //獲取到 當前 input 下的元素(原值) window.olds = $(this).children('input').val(); if(olds==undefined) { r... ...
<td signs="name">
<input type="text" disabled="disabled" readonly="readonly" value="{$res.section}" >
</td>
//雙擊觸發事件 $("tbody>tr>td").dblclick(function(){ //獲取到 當前 input 下的元素(原值) window.olds = $(this).children('input').val(); if(olds==undefined) { return false; } var signs = $(this).attr('signs'); //獲取屬性值(這些值方便php後臺的操作) // console.log(signs); var user_id = $(this).parent().attr("id"); //接受當前點擊的ID(tr里的id) // console.log(user_id); //雙擊之後可以修改 $(this).find('input').attr("disabled",false); $(this).find('input').attr("readonly",false); $(this).find('input').css("border",'1px solid deepskyblue'); $(this).find('input').attr('id', signs + "_" + user_id); //方便下麵失去焦點事件 找ID(沒有這個無法定位到tr裡面的id屬性) //迴圈這些值從而判斷是修改數據的類型,對一些特殊類型的數據進行特殊處理 switch(signs){ case 'name': $("#" + signs + "_" + user_id).focus().on("blur",function(){ var content = $(this).val(); // console.log(content); if(content!=olds) //與原值不同則傳到後臺 { // alert(user_id);alert(signs);alert(content); /* 通過getJSON將數據傳輸到後臺 USER_ID SIGNS CONTENT */ $.ajax({ type:"post", // 請求類型 url:"{:url('Sections/update')}", // 請求URL data:{id:user_id,val:content}, // 請求參數 即是 在Servlet中 request.getParement();可以得到的字元串 dataType:"json", // 數據返回類型 cache:false, // 是否緩存 async:true, // 預設為true 非同步請求 success:function(result){ // 成功返回的結果(響應) console.info(result); if(result){ // alert('22213'); }else{ // alert('1111'); } } }); } $(this).attr('disabled', 'disabled'); $(this).attr('readonly', 'readonly'); $(this).css('border', '0'); $(this).css('background', '#fff'); $(this).css('text-align', 'center'); }); break; } })
public function update() { $datas=input('post.'); $id = $datas['id']; $name = $datas['val']; $res = $this->section->updates($datas); echo json_encode($res); }
/**
* 修改
*/
public function updates($data)
{
$Section = new Section;
$res = $Section->save([
'section' => $data['val'],
],['id' => $data['id']]);
return $res;
}