我想使用变量作为fillSelectors()
方法输入标记的键:
this.fillSelectors(formLogin, { variable1:myEmail},false)
表单名称和值(myEmail)是可变的,但不是键(variable1)。作为键,需要一个字符串,否则我会收到错误:
CasperError: Errors encountered while filling form: no field matching css selector "inpu1" in form
你可以帮忙吗?
答案 0 :(得分:2)
通过执行{ variable1: myEmail }
,您将创建一个名为variable1
的属性的对象。这与{ "variable1": myEmail }
完全相同,因为javascript键每次都被读为字符串。这与其他语言不同,例如python,你可以将不同的对象作为键而不仅仅是字符串。
你想要的是以不同的方式构建你的对象:
var obj = {};
obj[variable1] = myEmail; // here the value of variable1 is used, not its name
this.fillSelectors(formLogin, obj, false)