lipengju 发表于 2025-5-9 19:19:30

操作react版网页出现,自动输入报错t.persist is not a function

携程网页面操作自动输入报错t.persist is not a function
https://hotels.ctrip.com/hotels/67852177.html#ctm_ref=hp_htl_pt_pro_01

!(data/attachment/forum/202505/09/191755zd582g2eczzdo4z9.png)
这个错误导致输入的无效,试了很多方法就是不行。大佬能写个模版怎么能操作生效不
急,急,急!!!

李恒道 发表于 2025-5-9 21:55:33

最好还是提供代码。。。
我这里测试感觉什么都对不上

lipengju 发表于 2025-5-12 08:49:42

李恒道 发表于 2025-5-9 21:55
最好还是提供代码。。。
我这里测试感觉什么都对不上

没有什么代码,就比如在携程上要查询“北京七天酒店”,怎么能实现点击按钮搜索功能

李恒道 发表于 2025-5-12 09:26:47

lipengju 发表于 2025-5-12 08:49
没有什么代码,就比如在携程上要查询“北京七天酒店”,怎么能实现点击按钮搜索功能 ...

让哥哥贴代码是因为我有疑虑
$0.__reactProps$av8e1g9xq1.onChange({persist:()=>{},target:{value:123}})
你查的那个dom在我这里看着根本没react属性
所以没理解为什么你那里还能正常调用但是出错
      i.onChange = function(t) {
            t.persist();
            var e = (n = i.state).desVisible
            , n = n.assoVisible;
            t.target.value || (n = !(e = !0)),
            i.setState({
                selectFlag: !1,
                desVisible: e,
                assoVisible: n,
                mod: m.a
            }),
            i.props.onChange(t.target.value, function() {
                var e = i.props.value;
                (Object(s.e)(e) || 1 < i.props.value.length) && i.customer(t)
            })
      }
直接看一下事件的执行过程传入需要参数就可以了

lipengju 发表于 2025-5-12 12:40:41

李恒道 发表于 2025-5-12 09:26
让哥哥贴代码是因为我有疑虑
$0.__reactProps$av8e1g9xq1.onChange({persist:()=>{},target:{value:123}} ...

看不懂怎么做
我代码就是输入,如下:
var ele = $('#keyword')
const evt = new Event('change', { bubbles: true });
ele.value = 'Xhotel青绵酒店(抚州临川东华理工大学店)'
      

ele.dispatchEvent(evt);
const reactKey = Object.keys(ele).find(k => k.startsWith('__reactProps'));

ele.onChange(evt);

lipengju 发表于 2025-5-12 13:32:33

李恒道 发表于 2025-5-9 21:55
最好还是提供代码。。。
我这里测试感觉什么都对不上

或者大佬能帮我写下,怎么操作携程网页版的输入框查询酒店

李恒道 发表于 2025-5-15 23:56:59

lipengju 发表于 2025-5-12 13:32
或者大佬能帮我写下,怎么操作携程网页版的输入框查询酒店

我发哥哥的哪一行就是成品代码了
你直接对到input的dom上就可以了
页: [1]
查看完整版本: 操作react版网页出现,自动输入报错t.persist is not a function