1. 程式人生 > >js和jQuery實現雙擊表格變為可編輯狀態

js和jQuery實現雙擊表格變為可編輯狀態

看到別人的程式碼,自己分析加的備註,直接上程式碼!

<style type="text/css">
body {
font-size: 12px;
}


td {
border-width: 1px;
border-top-style: solid;
border-right-style: none;
border-bottom-style: none;
border-left-style: solid;
text-align: center;
width: 25%;
height: 20px;
}
table {
border-width: 1px;
border-right-style: solid;
border-bottom-style: solid;
border-top-style: none;
border-left-style: none;
border-color: #000;
}
.text {
width: 95%;
border: 1px dashed #FF9900;
}
</style>

/*......................................................................................................................*/

<script language="javascript">
/*  
修改的id值和單元格的值,可轉成json串
用ajax提交資料到後臺,後臺解析json,更新資料庫
*/
// 將單元格轉化成文字框 
function changeTotext(obj) {
//獲取標籤內的文字值
var tdValue = obj.innerText;
alert(tdValue);
obj.innerText = "";
//建立input標籤物件
var txt = document.createElement("input");
txt.type = "text";
//將文字值賦給input的value
txt.value = tdValue;
//新建input的id值(可以用資料庫的ID值)
txt.id = "_text_000000000_";
//新增input節點,並放到td中
obj.appendChild(txt);
//選取域中的文字(雙擊時文字全選)
txt.select();
//雙擊之後改變樣式
//單元格邊框樣式
obj.style.border = "1px dashed #ff9900"; 
//input標籤邊框
txt.style.border = "0px";
txt.style.outline = "none";
}
// 取消單元格中的文字框,並將文字框中的值賦給單元格 
function cancel(obj) {
var txtValue = document.getElementById("_text_000000000_").value;
//更改之後的值
obj.innerText = txtValue;

}

/*********************************************/
// 事件 
document.ondblclick = function() {
//取得標籤屬性
if (event.srcElement.tagName.toLowerCase() == "td") {
//獲得觸發事件的元素
//物件
changeTotext(event.srcElement);
}
}
//當滑鼠擡起執行
document.onmouseup = function() {
if (document.getElementById("_text_000000000_")
&& event.srcElement.id != "_text_000000000_") {
var obj = document.getElementById("_text_000000000_").parentElement;
cancel(obj);
}
}
</script>
</head>
<body>
<table width="50%" border="0" align="center" cellpadding="0"
cellspacing="0">
<tr>
<td>dblclick</td>
<td>eqweqwe</td>
<td>qeqe</td>
<td>ewqeq</td>
</tr>
</table>
</body>

http://blog.mn886.net/jqGrid/

可以去jqgrid的demo詳細檢視

相關推薦

jsjQuery實現表格變為編輯狀態

看到別人的程式碼,自己分析加的備註,直接上程式碼! <style type="text/css"> body {font-size: 12px; } td {border-width: 1px;border-top-style: solid;border-rig

分別使用jsJQuery實現簡單的表格隔行變色以及高亮顯示

一、1.1隔行變色html 表格 使用<thead>和<tbody>標籤拆分表頭和內容 <table border="1" width="500" height="50" align="center" id="tb1"> <thead>

PHP+jQuery實現修改table表格

判斷 col use success case turn 當前 border find <td signs="name"> <input type="text" disabled="disabled" readonly="readonly"

jsjquery實現回到頂層

left ret poi add 寬度 fadein soft 距離 jquery實現 js <!DOCTYPE html> <html> <head> <title>返回頂部</title> <styl

25.用jsjquery實現下拉列表的左右選擇

select2 hit color nts -type utf ctype block 標簽 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/x

jsjQuery實現的Ajax

1. JS實現Ajax <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="wid

分別使用jsJQuery實現省市二級聯動

1.1html js中this指的是當前操作的物件 <tr> <td>籍貫</td> <td><select onchange="changeCity(this.value)" id="province" &g

分別使用jsJQuery實現全選全不選

1.1html <table border="1" width="500" height="50" align="center"> <thead> <tr> <td colspan="4"><input type="butt

分別使用jsJQuery實現html首頁圖片輪播以及廣告圖片定時彈出

主要使用setInterval方法設定更新週期,clearInterval清除週期。(如果不清除會一直週期迴圈執行下去,而setTimeout只是在指定時間後執行一次,這裡完全可以替換為setTimeout方法)   一、js首頁輪播 第一步:確定事件(onload)併為

使用jsjquery實現點選圖片上傳及預覽

//上傳頭像 $(".avator-btn-fake").click(function(){ $("#upload").click(); }); $("#upload").change(function(){ var

利用原生jsjQuery實現單選框的勾選取消操作

根據以下的Demo,大概就可以看的明白 Demo: <html> <head> <script src='jquery-1.9.1.min.js'></sc

原生jsjQuery實現頁面跳轉的學習

js的實現 1.window.location.href方式     <script language="javascript" type="text/javascript">

網頁實時聊天之jsjQuery實現ajax長輪詢

js和jQuery實現ajax長輪詢眾所周知,HTTP協議是無狀態的,所以一次的請求都是一個單獨的事件,和前後都沒有聯絡。所以我們在解決網頁實時聊天時就遇到一個問題,如何保證與伺服器的長時間聯絡,從而源源不段地獲取資訊。一直以來的方式無非有這麼幾種:1、長連線,即伺服器端不斷

div變成編輯區的簡單實現

   雙擊時,實現用一個新建的input元素替換div,然後當input失去焦點時先把input的內容傳給原來的div,並用該div重新替換input,程式碼如下 window.onload = function() { // 載入的時候就被初始化,此處的this是指

bootstrap-table 實現單元格編輯

$(function(){ $('#table').bootstrapTable({ url:'data.json', columns:[ {field: 'id',title: 'ID'},

點選後變為編輯狀態(ajax非同步提交)

<script> //相當於在頁面中的body標籤加上onload事件 $(function(){ //找到所有的td節點 var tds=$("td"); //給所有的td新增點選事件 tds.click(f

將瀏覽頁面變為編輯狀態

除錯過程往往需要直接去掉一些元素,可以同過瀏覽器執行js來實現頁面元素可編輯。位址列中鍵入如下後回車:javascript:document.body.contentEditable='true';document.designMode='on'; void 0瀏覽器如果跳轉

分別用jsjQuery實現表格的全選中全不選

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>使用jQuery和js完成複選框的全選和全不選</title> <script

跨域問題相關知識詳解(原生jsjquery兩種方法實現jsonp跨域)

syn con 加載 developer 兩種方法 ray exe 編寫 分組 1、同源策略 同源策略(Same origin policy),它是由Netscape提出的一個著名的安全策略。同源策略是一種約定,它是瀏覽器最核心也最基本的安全功能,如果缺少了同源策略,則瀏覽

JQuery實現關註取消功能

image val 便是 可見 允許 幹貨 轉發 決定 jquery插件 點贊,網絡用語,表示“贊同”、“喜愛”。 該網絡語來源於網絡社區的“贊”功能。送出和收獲的贊的多少、贊的給予偏好等,在某種程度