【发布时间】:2011-03-29 14:17:34
【问题描述】:
我正在使用 pyjd/hulahop/pyxpcom 加载带有输入字段的 HTML 文档,该输入字段与“onchange=....”绑定到一些执行 AJAX 调用的 JS 函数。
html 看起来像这样:
...
<input name="inp" type="text" onchange="checkInput()"></input>
...
我可以使用以下代码轻松定位和修改输入字段:
import pyjd
pyjd.setup(URL)
bw = pyjd.hula.wv
doc = bw.getDomDocument()
inp = doc.getElementsByName("inp").item(0)
inp.value = "somestring"
但是,这不会触发“onchange”处理程序,似乎我必须手动进入/退出输入字段以执行此操作。 从我所看到的 pyxpcom 接口非常接近 C++ 接口,这就是为什么我在那里阅读了一堆 C++ sn-ps,我使用 FocusManager 接口尝试了一些事情,发出 .focus() 和 .blur () 事件在“inp”元素上,但到目前为止没有成功。
有人知道这应该如何工作吗? 甚至可能吗? 有没有办法直接调用附加的 onchange 处理程序?
P.S.:对不起,睡衣标签,我不允许创建“pyjd”标签:-)
【问题讨论】: