fix: setInterval轮询替代setTimeout,等cell就绪再创建UiFloat
This commit is contained in:
parent
18eea5b5f9
commit
d536490599
@ -77,7 +77,7 @@
|
||||
"event": "show",
|
||||
"actiontype": "script",
|
||||
"target": "self",
|
||||
"script": "setTimeout(function(){for(var i=1;;i++){var cell=bricks.getWidgetById('disc_cell_'+i,bricks.app.root);if(!cell)break;(function(c,idx){var el=c.dom_element;var pid=el.getAttribute('data-pid');var did=el.getAttribute('data-did')||'';var val=el.getAttribute('data-discount')||'';var uf=new bricks.UiFloat({value:val,dec_len:2,placeholder:'0~1',fontSize:'12px',width:'100%'});uf._lv=val;uf.dom_element.addEventListener('blur',function(){var nv=String(uf.getValue()||'');if(nv===uf._lv)return;uf._lv=nv;fetch('{{entire_url(\"./save_discount.dspy\")}}',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({discountid:'{{params_kw.discountid}}',productid:pid,detail_id:did,discount:nv})}).then(function(r){return r.json()}).then(function(r){if(r.widgettype==='Error')bricks.show_error(r.options)}).catch(function(e){console.error(e)})});c.add_widget(uf)})(cell,i)}},300)"
|
||||
"script": "var tid=setInterval(function(){var cell=bricks.getWidgetById('disc_cell_1',bricks.app.root);if(!cell)return;clearInterval(tid);for(var i=1;;i++){var c=bricks.getWidgetById('disc_cell_'+i,bricks.app.root);if(!c)break;(function(c){var el=c.dom_element;var pid=el.getAttribute('data-pid');var did=el.getAttribute('data-did')||'';var val=el.getAttribute('data-discount')||'';var uf=new bricks.UiFloat({value:val,dec_len:2,placeholder:'0~1',fontSize:'12px',width:'100%'});uf._lv=val;uf.dom_element.addEventListener('blur',function(){var nv=String(uf.getValue()||'');if(nv===uf._lv)return;uf._lv=nv;fetch('{{entire_url(\"./save_discount.dspy\")}}',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({discountid:'{{params_kw.discountid}}',productid:pid,detail_id:did,discount:nv})}).then(function(r){return r.json()}).then(function(r){if(r.widgettype==='Error')bricks.show_error(r.options)}).catch(function(e){console.error(e)})});c.add_widget(uf)})(c)}},300);"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user