append model in orderDetailAddPage
当前为
// ==UserScript==
// @name appendModel
// @namespace http://tampermonkey.net/
// @version 0.2
// @description append model in orderDetailAddPage
// @author FengXia
// @match http://47.107.106.156/*
// @icon
// @grant none
// @license MIT
// ==/UserScript==
(function() {
let newNode = document.createElement("td");
newNode.innerText="规格:";
newNode.id="model"
let newNode2 = document.createElement("td");
let newNode3 = document.createElement("tr");
let oldxhr=window.XMLHttpRequest
function newobj(){}
window.XMLHttpRequest=function(){
let tagetobk=new newobj();
tagetobk.oldxhr=new oldxhr();
let handle={
get: function(target, prop, receiver) {
if(prop==='oldxhr'){
return Reflect.get(target,prop);
}
if(typeof Reflect.get(target.oldxhr,prop)==='function')
{
if(Reflect.get(target.oldxhr,prop+'proxy')===undefined)
{
target.oldxhr[prop+'proxy']=(...funcargs)=> {
let result=target.oldxhr[prop].call(target.oldxhr,...funcargs)
// console.log('函数劫持获取结果',result)
return result;
}
}
return Reflect.get(target.oldxhr,prop+'proxy')
}
if(prop.indexOf('response')!==-1)
{
//console.log('属性劫持结果',Reflect.get(target.oldxhr,prop))
let xhrString = Reflect.get(target.oldxhr,prop)
try {
xhrString = JSON.parse(xhrString)
//console.log('属性劫持结果2',xhrString)
//console.log('属性劫持结果3',xhrString.detail.goodsInfo.model)
let modelString =xhrString.detail.goodsInfo.model;
let newstorageprice = xhrString.detail.goodsInfo.newstorageprice;
if (modelString){
let ops=document.querySelectorAll('#sales-form-orderDetailAddPage tbody tr');
let ops2 =document.querySelector('#sales-form-orderDetailAddPage tbody');
let findModel=document.querySelectorAll('#sales-form-orderDetailAddPage tbody #model');
if (findModel){
}
newNode2.innerHTML=`<input class="len150 readonly" readonly="readonly" name="model" placeholder=${modelString}>`
newNode3.innerHTML=`<td>最新库存价:</td><td><input class="len150 readonly" readonly="readonly" name="newstorageprice" placeholder=${newstorageprice}></td>`
ops[11].appendChild(newNode);
ops[11].appendChild(newNode2);
ops2.appendChild(newNode3);
}
return Reflect.get(target.oldxhr,prop)
} catch(err){
return Reflect.get(target.oldxhr,prop)
}
}
return Reflect.get(target.oldxhr,prop);
},
set(target, prop, value) {
return Reflect.set(target.oldxhr, prop, value);
},
has(target, key) {
debugger;
return Reflect.has(target.oldxhr,key);
}
}
let ret = new Proxy(tagetobk, handle);
return ret;
let ops=document.querySelector('#sales-form-orderDetailAddPage .ops');
}
})();