最近看到一種很神奇的寫法
在這邊簡單記錄一下
1 | <table> |
1 | $('table td').click(function(){ |
看到這個寫法,覺得他還缺少了存檔驗證
所以修改程式碼1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34$('table td').click(function(){
var source_text = $(this).text();
if(!$(this).is('.input')){
$(this).addClass('input').html('<input type="text" value="'+ $(this).text() +'" />').find('input').focus().blur(function(){
if (source_text == $(this).val()){
$(this).parent().removeClass('input').html($(this).val() || 0);
}
}).change(function(){
if (source_text == $(this).val()) return false;
var id = $(this).parent().siblings("th:eq(0)").text();
var thisclass = $(this).parent().attr("class");
var thisvalue=$(this).val();
$.ajax({
type: 'POST',
url: 'update.php',
data: "thisid="+thisid+"&thisclass="+thisclass+"&thisvalue="+thisvalue,
success:()=>{
$(this).parent().removeClass('input').html($(this).val() || 0);
},
error:()=>{
alert('更新失敗');
$(this).parent().removeClass('input').html(source_text || 0);
}
});
});
}
}).hover(function(){
$(this).addClass('hover');
},function(){
$(this).removeClass('hover');
});
PHP部份就不寫了,其實可以不要用class
來當改db名字
不然還要多處理class 後面加的不份
用class
還需PHP後端還需要split
空白過濾之後的東西
PHP回傳錯誤,這樣能讓ajax進入error function
PHP: http_response_code - Manual