簡體   English   中英

嘗試通過分配給變量i來增加對象的值。 請指教

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM