2014-09-01 77 views
0

我想用一個變量作爲fillSelectors()方法輸入標籤的關鍵變量鍵:使用在CasperJS」 fillSelectors

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

形式的名稱和值(myEmail)是可變的,但不是關鍵(變量1 )。至於關鍵,需要一個字符串,否則我會得到一個錯誤:

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

你能幫忙嗎?

回答

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) 
+0

現在,我可以擁有所有三個部分(表格ID,key和value字段)的動態。 – Timo 2014-09-03 06:07:22