xxdoc 发表于 2024-10-21 07:51:34

表格如何填写数据并验证求思路

!(data/attachment/forum/202410/21/074647f915712r5oooc4o4.png)


<div class="x-panel-mr"><div class="x-panel-mc" id="ext-gen523"><div class="x-panel-tbar x-panel-tbar-noborder" id="ext-gen520" style="width: 865px;"><div id="ext-comp-1157" class="x-toolbar x-small-editor x-toolbar-layout-ct" style="width: 861px;"><table class="x-toolbar-ct" cellspacing="0"><tbody><tr><td class="x-toolbar-left" align="left"><table cellspacing="0"><tbody><tr class="x-toolbar-left-row"><td class="x-toolbar-cell" id="ext-gen538"><table id="ext-comp-1158" class="x-btn x-btn-text-icon" style="width: auto;" cellspacing="0"><tbody class="x-btn-small x-btn-icon-small-left"><tr><td class="x-btn-tl"><i>&nbsp;</i></td><td class="x-btn-tc"></td><td class="x-btn-tr"><i>&nbsp;</i></td></tr><tr><td class="x-btn-ml"><i>&nbsp;</i></td><td class="x-btn-mc"><em class="" unselectable="on"><button type="button" id="ext-gen539" class=" x-btn-text add">插入(F1)</button></em></td><td class="x-btn-mr"><i>&nbsp;</i></td></tr><tr><td class="x-btn-bl"><i>&nbsp;</i></td><td class="x-btn-bc"></td><td class="x-btn-br"><i>&nbsp;</i></td></tr></tbody></table></td><td class="x-toolbar-cell" id="ext-gen540"><table id="ext-comp-1159" class="x-btn x-btn-text-icon" style="width: auto;" cellspacing="0"><tbody class="x-btn-small x-btn-icon-small-left"><tr><td class="x-btn-tl"><i>&nbsp;</i></td><td class="x-btn-tc"></td><td class="x-btn-tr"><i>&nbsp;</i></td></tr><tr><td class="x-btn-ml"><i>&nbsp;</i></td><td class="x-btn-mc"><em class="" unselectable="on"><button type="button" id="ext-gen541" class=" x-btn-text remove">删除(F2)</button></em></td><td class="x-btn-mr"><i>&nbsp;</i></td></tr><tr><td class="x-btn-bl"><i>&nbsp;</i></td><td class="x-btn-bc"></td><td class="x-btn-br"><i>&nbsp;</i></td></tr></tbody></table></td></tr></tbody></table></td><td class="x-toolbar-right" align="right"><table class="x-toolbar-right-ct" cellspacing="0"><tbody><tr><td><table cellspacing="0"><tbody><tr class="x-toolbar-right-row"></tr></tbody></table></td><td><table cellspacing="0"><tbody><tr class="x-toolbar-extras-row"></tr></tbody></table></td></tr></tbody></table></td></tr></tbody></table></div></div><div class="x-panel-body x-panel-body-noborder" id="ext-gen521" style="height: 110px; width: 865px;"><div class="x-grid3" hidefocus="true" id="ext-gen525" style="width: 867px; height: 112px;"><div class="x-grid3-viewport" id="ext-gen526"><div class="x-grid3-header" id="ext-gen527"><div class="x-grid3-header-inner" id="ext-gen529" style="width: 867px;"><div class="x-grid3-header-offset" style="width:642px;"><table style="width: 623px;" cellspacing="0" cellpadding="0" border="0"><thead><tr class="x-grid3-hd-row"><td class="x-grid3-hd x-grid3-cell x-grid3-td-numberer x-grid3-cell-first " style="width: 21px;"><div class="x-grid3-hd-inner x-grid3-hd-numberer" unselectable="on" style=""><a class="x-grid3-hd-btn" href="#"></a><img alt="" class="x-grid3-sort-icon" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="></div></td><td class="x-grid3-hd x-grid3-cell x-grid3-td-FYMC" style="width: 198px;"><div class="x-grid3-hd-inner x-grid3-hd-FYMC" unselectable="on" style=""><a class="x-grid3-hd-btn" href="#" id="ext-gen754" style="height: 22px;"></a>附加项目<img alt="" class="x-grid3-sort-icon" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="></div></td><td class="x-grid3-hd x-grid3-cell x-grid3-td-FYDW" style="width: 78px;"><div class="x-grid3-hd-inner x-grid3-hd-FYDW" unselectable="on" style=""><a class="x-grid3-hd-btn" href="#" id="ext-gen836" style="height: 22px;"></a>单位<img alt="" class="x-grid3-sort-icon" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="></div></td><td class="x-grid3-hd x-grid3-cell x-grid3-td-YLSL" style="width: 78px; text-align: right;"><div class="x-grid3-hd-inner x-grid3-hd-YLSL" unselectable="on" style="padding-right: 16px;"><a class="x-grid3-hd-btn" href="#" id="ext-gen753" style="height: 22px;"></a>数量<img alt="" class="x-grid3-sort-icon" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="></div></td><td class="x-grid3-hd x-grid3-cell x-grid3-td-YLDJ" style="width: 78px; text-align: right;"><div class="x-grid3-hd-inner x-grid3-hd-YLDJ" unselectable="on" style="padding-right: 16px;"><a class="x-grid3-hd-btn" href="#" id="ext-gen839" style="height: 22px;"></a>单价<img alt="" class="x-grid3-sort-icon" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="></div></td><td class="x-grid3-hd x-grid3-cell x-grid3-td-HJJE" style="width: 78px; text-align: right;"><div class="x-grid3-hd-inner x-grid3-hd-HJJE" unselectable="on" style="padding-right: 16px;"><a class="x-grid3-hd-btn" href="#" id="ext-gen840" style="height: 22px;"></a>金额<img alt="" class="x-grid3-sort-icon" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="></div></td><td class="x-grid3-hd x-grid3-cell x-grid3-td-ZFBL x-grid3-cell-last" style="width: 78px; text-align: right;"><div class="x-grid3-hd-inner x-grid3-hd-ZFBL" unselectable="on" style="padding-right: 16px;"><a class="x-grid3-hd-btn" href="#" id="ext-gen837" style="height: 22px;"></a>自负比例<img alt="" class="x-grid3-sort-icon" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="></div></td></tr></thead></table></div></div><div class="x-clear"></div></div><div class="x-grid3-scroller" id="ext-gen528" style="width: 867px; height: 88px;"><div class="x-grid3-body" style="width:623px;" id="ext-gen530"><div class=" x-grid3-row" style="width:623px;"><table class="x-grid3-row-table" style="width: 623px;" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td class="x-grid3-col x-grid3-cell x-grid3-td-numberer x-grid3-cell-first" style="width: 21px;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-numberer" unselectable="on">1</div></td><td class="x-grid3-col x-grid3-cell x-grid3-td-FYMC " style="width: 198px;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-FYMC" unselectable="on">费用</div></td><td class="x-grid3-col x-grid3-cell x-grid3-td-FYDW " style="width: 78px;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-FYDW" unselectable="on">次</div></td><td class="x-grid3-col x-grid3-cell x-grid3-td-YLSL x-grid3-dirty-cell x-grid3-cell-selected" style="color:#00AA00;font-weight:bold;width: 78px;text-align: right;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-YLSL" unselectable="on" id="ext-gen842">3.00</div></td><td class="x-grid3-col x-grid3-cell x-grid3-td-YLDJx-grid3-dirty-cell" style="color:#00AA00;font-weight:bold;width: 78px;text-align: right;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-YLDJ" unselectable="on">9.00</div></td><td class="x-grid3-col x-grid3-cell x-grid3-td-HJJEx-grid3-dirty-cell" style="color:#00AA00;font-weight:bold;width: 78px;text-align: right;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-HJJE" unselectable="on">27.00</div></td><td class="x-grid3-col x-grid3-cell x-grid3-td-ZFBL x-grid3-cell-last " style="color:#00AA00;font-weight:bold;width: 78px;text-align: right;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-ZFBL" unselectable="on">1.000</div></td></tr></tbody></table></div></div><a href="#" class="x-grid3-focus" tabindex="-1" id="ext-gen531" style="left: 303px; top: 1px;"></a><div class="x-layer x-editor x-small-editor x-grid-editor" id="ext-comp-1268" style="position: absolute; z-index: 11000; visibility: hidden; left: -10000px; top: -10000px; overflow: auto;"><div class="x-form-field-wrap x-form-field-trigger-wrap" id="ext-gen808" style="width: 200px;"><input size="24" autocomplete="off" id="ext-comp-1151" name="" class="x-form-text x-form-field" style="width: 192px;" type="text"><img src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" alt="" class="x-form-trigger x-form-arrow-trigger" id="ext-gen809" style="display: none;"></div></div><div class="x-layer x-editor x-small-editor x-grid-editor" id="ext-comp-1282" style="position: absolute; z-index: 11000; visibility: hidden; left: -10000px; top: -10000px; overflow: auto;"><input size="20" autocomplete="off" id="ext-comp-1153" name="" class="x-form-text x-form-field x-form-num-field" style="width: 72px; height: 18px;" type="text"></div></div></div><div class="x-grid3-resize-marker" id="ext-gen532">&nbsp;</div><div class="x-grid3-resize-proxy" id="ext-gen533">&nbsp;</div></div></div></div></div>


这个是表格,点击数量栏进入编辑状态,输入数据后,点击其他地方,就开始计算金额。请问如何输入数量并诱发计算操作呀,有思路吗?
我记得以前都是input操作。这个表格的没有见到过。。

王一之 发表于 2024-10-21 10:19:13

操作input填入数据,再操作button提交计算就好了

可以参考:https://learn.scriptcat.org/%E6%B2%B9%E7%8C%B4%E6%95%99%E7%A8%8B/%E5%85%A5%E9%97%A8%E7%AF%87/%E8%84%9A%E6%9C%AC%E8%87%AA%E5%8A%A8%E5%8C%96%E4%B9%8B%E6%A8%A1%E6%8B%9F%E7%82%B9%E5%87%BB%E5%92%8C%E8%A1%A8%E5%8D%95%E5%A1%AB%E5%86%99/

xxdoc 发表于 2024-10-21 11:34:53

本帖最后由 xxdoc 于 2024-10-21 11:39 编辑

不行啊。这个不是input。填写value="0.00" ,根部没有数值没有变化

var ipt;
                        ipt=document.querySelectorAll("")
                        // ipt.click()
                        ipt.innerText='0.00';
                        //ipt.dispatchEvent(new Event('focus'))
                        // ipt.dispatchEvent(new Event('input'))
                        // ipt.dispatchEvent(new Event('change'))
                        // ipt.dispatchEvent(new Event('blur'));
                        ipt.style.backgroundColor = 'red';
                        ipt.style.border = "4px solid red";
                        ipt.style.borderRadius = "10px";
                        ipt.click()

无反应,填写 innerText 不会进入编辑状态,只是改变的前台网页内容。没意义

李恒道 发表于 2024-10-21 13:08:59

xxdoc 发表于 2024-10-21 11:34
不行啊。这个不是input。填写value="0.00" ,根部没有数值没有变化

var ipt;


不是input的话是什么dom元素
另外可以用Wappalyzer查看一下框架
https://learn.scriptcat.org/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98/%E5%B8%B8%E8%A7%81%E8%AF%AF%E5%8C%BA2/

xxdoc 发表于 2024-10-21 16:30:53

本帖最后由 xxdoc 于 2024-10-21 16:37 编辑

> 本帖最后由 xxdoc 于 2024-10-21 16:36 编辑

> [李恒道 发表于 2024-10-21 13:08](forum.php?mod=redirect&goto=findpost&pid=87674&ptid=7635)
> > 不是input的话是什么dom元素
> > 另外可以用Wappalyzer查看一下框架
> > https://learn.scriptcat.org/%E5%B8%B8% ...

就是一个表格,表格里面的数据需要修改 ,

![无标题.jpg](data/attachment/forum/202410/21/162505vbwk4bf9gvn30vwi.jpg)

只能看到这个

!(data/attachment/forum/202410/21/163051kw3dzqw9fqdrmw5l.png)

```
<div class="x-panel-ml"><div class="x-panel-mr"><div class="x-panel-mc" id="ext-gen1692"><div class="x-panel-tbar x-panel-tbar-noborder" id="ext-gen1689" style="width: 934px;"><div id="ext-comp-1414" class="x-toolbar x-small-editor x-toolbar-layout-ct" style="width: 930px;"><table cellspacing="0" class="x-toolbar-ct"><tbody><tr><td class="x-toolbar-left" align="left"><table cellspacing="0"><tbody><tr class="x-toolbar-left-row"><td class="x-toolbar-cell" id="ext-gen1707"><table id="ext-comp-1415" cellspacing="0" class="x-btn x-btn-text-icon" style="width: auto;"><tbody class="x-btn-small x-btn-icon-small-left"><tr><td class="x-btn-tl"><i>&nbsp;</i></td><td class="x-btn-tc"></td><td class="x-btn-tr"><i>&nbsp;</i></td></tr><tr><td class="x-btn-ml"><i>&nbsp;</i></td><td class="x-btn-mc"><em class="" unselectable="on"><button type="button" id="ext-gen1708" class=" x-btn-text add">插入(F1)</button></em></td><td class="x-btn-mr"><i>&nbsp;</i></td></tr><tr><td class="x-btn-bl"><i>&nbsp;</i></td><td class="x-btn-bc"></td><td class="x-btn-br"><i>&nbsp;</i></td></tr></tbody></table></td><td class="x-toolbar-cell" id="ext-gen1709"><table id="ext-comp-1416" cellspacing="0" class="x-btn x-btn-text-icon" style="width: auto;"><tbody class="x-btn-small x-btn-icon-small-left"><tr><td class="x-btn-tl"><i>&nbsp;</i></td><td class="x-btn-tc"></td><td class="x-btn-tr"><i>&nbsp;</i></td></tr><tr><td class="x-btn-ml"><i>&nbsp;</i></td><td class="x-btn-mc"><em class="" unselectable="on"><button type="button" id="ext-gen1710" class=" x-btn-text remove">删除(F2)</button></em></td><td class="x-btn-mr"><i>&nbsp;</i></td></tr><tr><td class="x-btn-bl"><i>&nbsp;</i></td><td class="x-btn-bc"></td><td class="x-btn-br"><i>&nbsp;</i></td></tr></tbody></table></td></tr></tbody></table></td><td class="x-toolbar-right" align="right"><table cellspacing="0" class="x-toolbar-right-ct"><tbody><tr><td><table cellspacing="0"><tbody><tr class="x-toolbar-right-row"></tr></tbody></table></td><td><table cellspacing="0"><tbody><tr class="x-toolbar-extras-row"></tr></tbody></table></td></tr></tbody></table></td></tr></tbody></table></div></div><div class="x-panel-body x-panel-body-noborder" id="ext-gen1690" style="height: 110px; width: 934px;"><div class="x-grid3" hidefocus="true" id="ext-gen1694" style="width: 936px; height: 112px;"><div class="x-grid3-viewport" id="ext-gen1695"><div class="x-grid3-header" id="ext-gen1696"><div class="x-grid3-header-inner" id="ext-gen1698" style="width: 936px;"><div class="x-grid3-header-offset" style="width:640px;"><table border="0" cellspacing="0" cellpadding="0" style="width: 623px;"><thead><tr class="x-grid3-hd-row"><td class="x-grid3-hd x-grid3-cell x-grid3-td-numberer x-grid3-cell-first " style="width: 23px;"><div class="x-grid3-hd-inner x-grid3-hd-numberer" unselectable="on" style=""><a class="x-grid3-hd-btn" href="#"></a><img alt="" class="x-grid3-sort-icon" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="></div></td><td class="x-grid3-hd x-grid3-cell x-grid3-td-FYMC" style="width: 200px;"><div class="x-grid3-hd-inner x-grid3-hd-FYMC" unselectable="on" style=""><a class="x-grid3-hd-btn" href="#" id="ext-gen1906" style="height: 22px;"></a>附加项目<img alt="" class="x-grid3-sort-icon" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="></div></td><td class="x-grid3-hd x-grid3-cell x-grid3-td-FYDW" style="width: 80px;"><div class="x-grid3-hd-inner x-grid3-hd-FYDW" unselectable="on" style=""><a class="x-grid3-hd-btn" href="#" id="ext-gen1909" style="height: 22px;"></a>单位<img alt="" class="x-grid3-sort-icon" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="></div></td><td class="x-grid3-hd x-grid3-cell x-grid3-td-YLSL" style="width: 80px; text-align: right;"><div class="x-grid3-hd-inner x-grid3-hd-YLSL" unselectable="on" style="padding-right: 16px;"><a class="x-grid3-hd-btn" href="#" id="ext-gen1914" style="height: 22px;"></a>数量<img alt="" class="x-grid3-sort-icon" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="></div></td><td class="x-grid3-hd x-grid3-cell x-grid3-td-YLDJ" style="width: 80px; text-align: right;"><div class="x-grid3-hd-inner x-grid3-hd-YLDJ" unselectable="on" style="padding-right: 16px;"><a class="x-grid3-hd-btn" href="#" id="ext-gen1910" style="height: 22px;"></a>单价<img alt="" class="x-grid3-sort-icon" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="></div></td><td class="x-grid3-hd x-grid3-cell x-grid3-td-HJJE" style="width: 80px; text-align: right;"><div class="x-grid3-hd-inner x-grid3-hd-HJJE" unselectable="on" style="padding-right: 16px;"><a class="x-grid3-hd-btn" href="#" id="ext-gen1917" style="height: 22px;"></a>金额<img alt="" class="x-grid3-sort-icon" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="></div></td><td class="x-grid3-hd x-grid3-cell x-grid3-td-ZFBL x-grid3-cell-last " style="width: 80px;text-align: right;"><div class="x-grid3-hd-inner x-grid3-hd-ZFBL" unselectable="on" style="padding-right: 16px;"><a class="x-grid3-hd-btn" href="#"></a>自负比例<img alt="" class="x-grid3-sort-icon" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="></div></td></tr></thead></table></div></div><div class="x-clear"></div></div><div class="x-grid3-scroller" id="ext-gen1697" style="width: 936px; height: 88px;"><div class="x-grid3-body" style="width:623px;" id="ext-gen1699"><div class=" x-grid3-row" style="width:623px;"><table class="x-grid3-row-table" border="0" cellspacing="0" cellpadding="0" style="width: 623px;"><tbody><tr><td class="x-grid3-col x-grid3-cell x-grid3-td-numberer x-grid3-cell-first" style="width: 23px;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-numberer" unselectable="on">1</div></td><td class="x-grid3-col x-grid3-cell x-grid3-td-FYMC" style="width: 200px;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-FYMC" unselectable="on" id="ext-gen1920">收费 费</div></td><td class="x-grid3-col x-grid3-cell x-grid3-td-FYDW " style="width: 80px;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-FYDW" unselectable="on">次</div></td><td class="x-grid3-col x-grid3-cell x-grid3-td-YLSL x-grid3-dirty-cell x-grid3-cell-selected" style="color:#00AA00;font-weight:bold;width: 80px;text-align: right;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-YLSL" unselectable="on" id="ext-gen1916">1.00</div></td><td class="x-grid3-col x-grid3-cell x-grid3-td-YLDJ x-grid3-dirty-cell" style="color:#00AA00;font-weight:bold;width: 80px;text-align: right;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-YLDJ" unselectable="on">9.00</div></td><td class="x-grid3-col x-grid3-cell x-grid3-td-HJJE " style="color:#00AA00;font-weight:bold;width: 80px;text-align: right;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-HJJE" unselectable="on">9.00</div></td><td class="x-grid3-col x-grid3-cell x-grid3-td-ZFBL x-grid3-cell-last " style="color:#00AA00;font-weight:bold;width: 80px;text-align: right;" tabindex="0"><div class="x-grid3-cell-inner x-grid3-col-ZFBL" unselectable="on">1.000</div></td></tr></tbody></table></div></div><a href="#" class="x-grid3-focus" tabindex="-1" id="ext-gen1700" style="left: 303px; top: 1px;"></a><div class="x-layer x-editor x-small-editor x-grid-editor" id="ext-comp-1481" style="position: absolute; z-index: 11000; visibility: hidden; left: -10000px; top: -10000px; overflow: hidden;"><div class="x-form-field-wrap x-form-field-trigger-wrap" id="ext-gen1880" style="width: 200px;"><input type="text" size="24" autocomplete="off" id="ext-comp-1408" name="" class="x-form-text x-form-field" style="width: 192px;"><img src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" alt="" class="x-form-trigger x-form-arrow-trigger" id="ext-gen1881" style="display: none;"></div></div><div class="x-layer x-editor x-small-editor x-grid-editor" id="ext-comp-1495" style="position: absolute; z-index: 11000; visibility: hidden; left: -10000px; top: -10000px; overflow: hidden;"><input type="text" size="20" autocomplete="off" id="ext-comp-1410" name="" class="x-form-text x-form-field x-form-num-field" style="width: 72px; height: 16px;"></div></div></div><div class="x-grid3-resize-marker" id="ext-gen1701">&nbsp;</div><div class="x-grid3-resize-proxy" id="ext-gen1702">&nbsp;</div></div></div></div></div></div>
```

李恒道 发表于 2024-10-21 17:41:55

xxdoc 发表于 2024-10-21 16:30
> 本帖最后由 xxdoc 于 2024-10-21 16:36 编辑

> [李恒道 发表于 2024-10-21 13:08](forum.php?mod=re ...
可以尝试直接拿到Vue的数据来控制显示
你看到只有表格可能是因为显示是表格
出现鼠标触发才能显示出来input

xxdoc 发表于 2024-10-22 06:44:08

有例子吗?我无从下手。

李恒道 发表于 2024-10-22 08:28:48

xxdoc 发表于 2024-10-22 06:44
有例子吗?我无从下手。


这个问题看着简单实际操作起来还是挺需要耐下心慢慢分析的
https://learn.scriptcat.org/%E6%B2%B9%E7%8C%B4%E6%95%99%E7%A8%8B/%E4%B8%AD%E7%BA%A7%E7%AF%87/%E5%85%83%E7%B4%A0%E8%A7%84%E5%88%99%E6%A0%A1%E9%AA%8C%E5%92%8C%E6%A3%80%E6%B5%8B%E7%9A%84%E8%A7%A6%E5%8F%91/

https://learn.scriptcat.org/%E6%B2%B9%E7%8C%B4%E6%95%99%E7%A8%8B/%E5%AE%9E%E6%88%98%E7%AF%87/%E5%AE%9E%E6%88%98%E7%A7%92%E6%9D%80%E5%BF%AB%E6%89%8B%E8%A7%86%E9%A2%91%E6%8F%90%E5%8F%96/


https://learn.scriptcat.org/%E6%B2%B9%E7%8C%B4%E6%95%99%E7%A8%8B/%E9%AB%98%E7%BA%A7%E7%AF%87/%E5%AE%9E%E6%88%98%E7%A0%B4%E8%A7%A3Vue%E7%99%BE%E5%BA%A6%E6%96%87%E5%BA%93%E5%A4%8D%E5%88%B6/

xxdoc 发表于 2024-10-22 16:34:03

本帖最后由 xxdoc 于 2024-10-22 16:41 编辑


不知道怎么去下断点。怎么监听到数据改变

下面是原代码中本来就有debug中断

// 不修改的情况下不触发afterCellEdit
                module.on("beforeCellEdit", this.beforeGridEdit, this);
                module.grid.on("beforeCheckedit", this.beforeCheckEdit, this)
                module.on("afterCellEdit", this.afterGridEdit, this);
                module.on("doNew", this.doNew, this);
                module.on("doSave", this.doSave, this);
                module.on("doRemove", this.doRemoveCF02, this);
                module.on("loadData", this.listLoadData, this);
                // module.on("click", this.loadFJdata, this);
//                              var gytj = module.grid.getColumnModel().getColumnById("GYTJ").editor;
//                              gytj.on("select", this.list.ypyfSelect, this.list);
我知道他是触发的afterCellEdit
我不知道怎么利用

afterGridEdit: function (it, record, field, v) {
                debugger
                var MZYPZLJSFS_Data = phis.script.rmi.miniJsonRequestSync({
                  serviceId: "publicService",
                  serviceAction: "loadSystemParams",
                  body: {
                        commons: ['MZYPZLJSFS', 'ZYYPZLJSFS']
                  }
                });
                var MZYPZLJSFS = MZYPZLJSFS_Data.json.body.MZYPZLJSFS;
                record.set("MZYPZLJSFS", MZYPZLJSFS);
                var sign = 1;
                if (it.id == "YPYF") {
                  field.getStore().each(function (r) {
                        if (r.data.key == v) {
                            if (record.get("MRCS") != r.data.MRCS) {
                              record.set("MRCS", r.data.MRCS);
                            } else {
                              sign = 0;//
                            }
                        }
                  }, this);
                }
                if (it.id == "YCJL" || it.id == "YYTS" || it.id == "YPYF") {
                  this.isYPSL = false;
                  if (this.exContext.systemParams.QYKJYWGL == 1
                            && record.get("KSBZ") == 1 && it.id == "YYTS") {//
                        var kjywts = this.exContext.systemParams.KJYSYTS || 3;
                        if (isNaN(kjywts)) {
                            MyMessageTip.msg("提示",
                                    "", true);
                            kjywts = 3;
                        }
                        if (v > kjywts) {
                           
                            record.set("YYTS", kjywts);
                            this.setMedQuantity(record);
                            return;
                        }
                  }
                  if (sign == 1) { // 添加this.cflx!=3&& this.cflx != 3
                     
                        this.setMedQuantity(record);
                  }
                }
                if (it.id == 'JLBS') {// add by yangl 记录倍数快捷录入
                  record.set("YCJL", parseFloat(v * record.get("YSYCJL"))
                            .toFixed(3));
                }
                if (it.id == 'YPYF' || it.id == 'GYTJ' || it.id == 'YYTS'
                        || (it.id == 'YPZS' && this.cflx != 3) || it.id == 'YPDS') {
                  this.isYPSL = false;
                  if (it.id == 'GYTJ') {
                        //替换GYTJ的select事件
                        var gytj = this.list.grid.getColumnModel().getColumnById("GYTJ").editor;
                        this.list.ypyfSelect(gytj, gytj.findRecord("key", record.get("GYTJ")), gytj.selectedIndex, record);// 附加项目
                  }
//                                        else {
                  var store = this.list.grid.getStore();
                  // if (it.id == "GYTJ") {
                  // this.doGytjChange(record, v);
                  // }
                  store.each(function (r) {
                        if (r.get('YPZH_SHOW') == record.get('YPZH_SHOW')) {
                            if (r.get("YPXH") != record.get("YPXH")) {
                              r.set(it.id, v);
                              r.set(it.id + '_text', record.get(it.id + '_text'));
                              if (it.id == 'YPYF') {
                                    r.set("MRCS", record.get("MRCS"));
                              }
                              if ((it.id == 'YPYF' || it.id == 'YYTS')
                                        && sign == 1
                              ) {// 添加this.cflx!=3 && this.cflx != 3
                                 
                                    this.setMedQuantity(r);
                              }
                            }
                        }
                  }, this)
//                                        }
                }

李恒道 发表于 2024-10-22 16:49:54

xxdoc 发表于 2024-10-22 16:34
不知道怎么去下断点。怎么监听到数据改变

下面是原代码中本来就有debug中断


看具体流程代码没用的

模拟触发注重框架的入口点函数,存在mvvm框架直接控制数据实现双向响应即可
没必要去关注函数做了什么
直接挖掘最上层的处理函数,能投递进去数据实现触发就可以了
页: [1] 2
查看完整版本: 表格如何填写数据并验证求思路