我想将变量用作fillSelectors()方法输入标签的键:

this.fillSelectors(formLogin, { variable1:myEmail},false)


表单名称和值(myEmail)是变量,但不是键(variable1)。作为键,需要一个字符串,否则会出现错误:

 CasperError: Errors encountered while filling form: no field matching css selector "inpu1" in form


你能帮忙吗?

最佳答案

通过执行{ variable1: myEmail },您将创建一个具有名为variable1的属性的对象。这与{ "variable1": myEmail }完全相同,因为在javascript键中每次都将键读取为字符串。这与其他语言(例如python)不同,在python中,您可以将不同的对象作为键,而不仅仅是字符串。

您想要以不同的方式构建对象:

var obj = {};
obj[variable1] = myEmail; // here the value of variable1 is used, not its name
this.fillSelectors(formLogin, obj, false)

09-25 16:30