how would you query two attributes together? I've tried quite a fwe variations:
<input type="text" value="somevalue'" /> $res = $dom->query('input[type="text" value="somevalue]'); $res = $dom->query('input[type="text", value="somevalue]'); $res = $dom->query('input[type="text"+value="somevalue]'); $res = $dom->query('input[type="text"][value="somevalue]'); etc... Thanks, Gerard Matthew Weier O'Phinney-3 wrote: > > -- Mon Zafra <mon...@gmail.com> wrote > (on Thursday, 16 October 2008, 03:50 AM +0800): >> Hi all, >> >> How do I select a node with an attribute with spaces? This code: >> >> require_once 'Zend/Dom/Query.php'; >> $val = 'foo bar'; >> $html = '<input type="text" value="' . $val . '" />'; >> >> $dom = new Zend_Dom_Query($html); >> $res = $dom->query('input[value="' . $val . '"]'); >> echo(count($res)); >> >> returns 0. I need this to make my controller tests pass. > > You need to use either a word match or a substring match: > > // word match: > $res = $dom->query('input[value~="foo"]'); > > // substring match: > $res = $dom->query('input[value*="foo bar"]'); > > The first will look for "foo" anywhere in the attribute. The second > looks for "foo bar" anywhere in the attribute. > > Strict comparisons often fail because, to be able to do word or > substring matches, we actually have to fudge a little and rewrite the > attribute values to app/prepend empty strings. > > -- > Matthew Weier O'Phinney > Software Architect | matt...@zend.com > Zend Framework | http://framework.zend.com/ > > -- View this message in context: http://www.nabble.com/Zend_Dom_Query-and-attributes-with-spaces-tp20000971p25706697.html Sent from the Zend Framework mailing list archive at Nabble.com.