2017-09-05 14 views
0

2つのタブで古い値を置き換えると考えられる入力を提供しています。値は1つのタブで自動的に入力されますが、自動入力機能を使用せずに値を完全に提供しています。 値は1つのタブでのみ置き換えられ、他のタブでは置き換えられません。 2番目のタブには、最初のタブのXMLバージョンが表示されます。セレンの入力テキストはすべての値を置き換えません

Code of the page

Tab 1 where I am providing input

AllElements = driver.find_elements_by_xpath("//div[@class='CodeMirror cm-s- 
       codeedit CodeMirror-wrap']") 
    for row in Inputs: 
     Content = row['Content'] 
     Universe = row['Universe'] 



    for ele in AllElements: 
     count = count + 1 

     if count == 1: 
      ele.click() 
      #Content = 'TR.NetAssetEstBrokerName' 
      driver.execute_script('return arguments[0].setAttribute("style", 
         "visibility:visible")', ele) 
      driver.execute_script("arguments[0].innerText = ' " + Content + 
         " ' ", ele) 
      driver.execute_script('return 
         arguments[0].setAttribute("value",' + Content + ')', 
                ele) 


     if count == 2: 
      ele.click() 
      #Universe = '[email protected]' 
      driver.execute_script('return arguments[0].setAttribute("style", 
        "visibility:visible")', ele) 
      driver.execute_script("arguments[0].innerText = ' " + Universe + 
          " ' ", ele) 
      driver.execute_script('return 
        arguments[0].setAttribute("value",'+Universe+')', ele) 


    driver.find_element_by_id('button-1093-btnEl').click() 

答えて

0

あなたがjavascriptexecutorを使用しているので、それはそれは、直接DOMから値を変更すること、です。あなたがしたい場合は、あなたの機能は

driver.findElement(By.id("YOURID")).setAttribute("value", "your value"); 

が、それはあなたを助ける:)

を願って必要に応じて振る舞うことができるのsetAttributeのようなビジネス・ロジックの使用操作ごとに振る舞うべき
関連する問題