トップ «前の日記(2005-12-14) 最新 次の日記(2005-12-18)» 編集

活動日誌


2005-12-15

[Selenium]Selenium で //input[@name='n' and @value='v'] と書くと IE でエラーになる件

このパッチで動くようになった。

Index: html-xpath/html-xpath-patched.js
===================================================================
--- html-xpath/html-xpath-patched.js    (revision 666)
+++ html-xpath/html-xpath-patched.js    (working copy)
@@ -602,7 +602,7 @@
            {
                var attribute = node.attributes[i];
                var attributeValue = attribute.nodeValue;
-                   if (attributeValue && attribute.specified)
+                   if (attributeValue && (attribute.specified || attribute.nodeName.toLowerCase() == 'value'))
                {
                    var domAttribute = dom.createAttribute(attribute.nodeName);
                    domAttribute.value = attributeValue;

なぜ IE でダメだったかというと、どうも IE だと input 要素に value 属性を指定しても、 attribute.specified が true にならないからのようだ。IE のバグ?


2005|02|03|04|05|06|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|03|04|05|06|10|
2008|04|10|
2009|10|
2010|05|08|
2012|01|02|03|
2014|01|
トップ «前の日記(2005-12-14) 最新 次の日記(2005-12-18)»