-
-
Save earthchie/f11250b898fcc187bd3de65f13cac1ba to your computer and use it in GitHub Desktop.
DLT_applyFields({ | |
id: '1122334455667', | |
prefix: 'นาย', // ต้องสะกดให้เหมือนตัวเลือกใน dropdown เป้ะๆ | |
name: 'ธนารัตน์', | |
lname: 'นักจองทะเบียน', | |
phone: '0812345678', | |
brand: 'LAMBORGHINI', // ต้องสะกดให้เหมือนตัวเลือกใน dropdown เป้ะๆ | |
cassis: 'MR1234567890', | |
number: '999' // แนะนำให้แก้โค้ดส่วนนี้ ปรับให้อ่านค่าจาก localStorage จะได้ไม่ต้องรันเลขเองด้วยมือทุกครั้ง | |
}); | |
function DLT_applyFields(data) { | |
isbody = 999; // bypass validation | |
const fields = document.querySelectorAll('input,select') | |
let f = { | |
number: document.querySelector('#number') | |
}; | |
let n = [18,19,20,21,22,23,24]; | |
for(i = 18; i <= 24; i++){ | |
// prefix, name, lastname | |
if(fields[i].id === 'prefixZQ'){ | |
f.prefix = fields[i]; | |
f.name = fields[i+1]; | |
f.lname = fields[i+2]; | |
let index = n.indexOf(i); | |
if (index !== -1) { | |
n.splice(index, 3); | |
} | |
} | |
// brand | |
if(fields[i].tagName === 'SELECT' && fields[i].id !== 'prefixZQ'){ | |
f.brand = fields[i]; | |
let index = n.indexOf(i); | |
if (index !== -1) { | |
n.splice(index, 1); | |
} | |
} | |
// phone number | |
if(fields[i].onkeypress != null && fields[i].onkeypress.toString() == 'function onkeypress(event) {\ncheck_number()\n}'){ | |
f.phone = fields[i]; | |
let index = n.indexOf(i); | |
if (index !== -1) { | |
n.splice(index, 1); | |
} | |
} | |
// cassis number | |
if(fields[i].onkeypress != null && fields[i].onkeypress.toString() == 'function onkeypress(event) {\ncheck_number1()\n}'){ | |
f.cassis = fields[i]; | |
let index = n.indexOf(i); | |
if (index !== -1) { | |
n.splice(index, 1); | |
} | |
} | |
} | |
console.log(n, fields) | |
f.id = fields[n.shift()]; // id card | |
//apply data if provided | |
Object.keys(data).forEach(i=>{ | |
f[i].value = data[i]; | |
}) | |
return f; // return all fields in case you need it | |
} |
สวัสดีครับ ลองใช้ Code นี้ดูครับ
var v_chase = 'MR0AB3GSX02559035';
var v_cardid = '0105561210237';
var v_fname = 'จองทะเบียน';
var v_lname = 'รถยนต์';
var v_tel = '021212000';
var v_title = 'นาย';
var v_brand = 'TOYOTA';
var v_number = '9989';
isbody = v_chase.length;
$('td:empty').remove();
$('tr:empty').remove();
var
$id1.closest('tr').next('tr').find('input[type="text"]:visible').val(v_cardid);
var
$name1.closest('tr').next('tr').find('input[type="text"]:visible').val(v_fname);
var
$name1.closest('tr').next('tr').find('input[type="text"]:visible').val(v_lname);
var
$name1.closest('tr').next('tr').find('input[type="text"]:visible').val(v_tel);
var
$name1.closest('tr').next('tr').find('input[type="text"]:visible').val(v_chase);
$('option[value="นาย"]').closest('select').val(v_title);
$('option[value="HONDA"]').closest('select').val(v_brand);
$('#number').val(v_number);
ต้องทำเพิ่มในส่วน Auto Refresh เมื่อเวลาเจอ Error Service Unavailable ครับ
มีตัวฉบับสามารถใช้งานได้ให้ลองไหมครับ
Code ที่ให้มาใช้ยังไงครับ
ระบบช่วยกรอกข้อมูล จองทะเบียนรถ ที่ https://reserve.dlt.go.th/reserve/s.php กดเข้าหน้า form ที่ปุ่มยอมรับหลักเกณฑ์ ต้องกดด้วยมือเราเอง เพื่อรับ session จากนั้นที่หน้าแบบฟอร์ม อย่าเพิ่งรัน script ต้องทิ้งเวลา 30 วิถึงจะรันได้ (จำลองว่าพิมพ์เอง) ไม่งั้น server จะจับได้ (จาก session ว่าไวเกินมนุษย์พิมพ์) แล้วมันจะเตะออกเป็นหน้าขาวๆ ถ้าเจอหน้าขาวคือโดนจับได้แล้วว่าใช้ script ต้องปิดหน้าต่างนั้นแล้วเริ่มใหม่เลย เพื่อเคลียร์ session ทิ้ง
เลขประมูลที่ไม่เปิดให้จอง มีทั้งหมด 291 เลข