[英]trying to increment a value of the object by assigning to a variable i . Please advice
下面是我的代碼。我正在嘗試將Excel工作表中的值輸入到頁面中的文本框中。 例如:在文本框中,id為'allocationRegContrib [17] .newFundValue',我想輸入一個值20。類似,對於另一個ID為'allocationRegContrib [18] .newFundValue'的文本框,我想輸入一個值,例如40。如何實現。 同樣,id最多可以達到60。但是我不想在所有文本框中都輸入。 所以我試圖使用像fill_in“ allocationRegContrib [i] .newFundValue”。
@i=17
for j in (workbook.first_row..workbook.last_row)
for k in (workbook.first_column..workbook.last_column)
if(k==1)
fill_in "searchInput", :with => workbook.cell(j,1)
find(:xpath, '//*[@id="sdcaLink"]').click
sleep 3
else
choose("sdcaOption", :option => "YES")
select(workbook.cell(j,k), :from => 'sdcaDuration')
fill_in "allocationRegContrib[i].newFundValue", :with => workbook.cell(j,k)
@i=i+1
find(:xpath, '//*[@id="specialDCAupdate"]').click
但這對我不起作用。 錯誤是“無法找到水豚元素分配RegContrib [i] .newFundValue”。 請指教
您可能有兩個問題:
i
和@i
是不一樣的東西。 我想您可能想在所有地方使用i
。 i
是一個局部變量(即一個簡單的普通舊變量)。 @i
是類的實例變量,例如其他語言中的“字段”或“屬性”。
fill_in "allocationRegContrib[i].newFundValue", :with => workbook.cell(j,k)
應該可能是:
fill_in "allocationRegContrib[#{i}].newFundValue", :with => workbook.cell(j,k)
#{i}
將變量i
的值放入字符串中,則水豚匹配器可以找到例如元素allocationRegContrib[17].newFundValue
(當i = 17時)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.