mirror of
https://github.com/servo/servo.git
synced 2025-06-23 16:44:33 +01:00
implement HTMLDataListElement.options
This commit is contained in:
parent
af616dba58
commit
a2189ee066
3 changed files with 27 additions and 7 deletions
|
@ -138,7 +138,7 @@ addHTMLElement('HTMLBRElement')
|
|||
addHTMLElement('HTMLCanvasElement')
|
||||
addHTMLElement('HTMLDataElement')
|
||||
addHTMLElement('HTMLDivElement')
|
||||
addHTMLElement('HTMLDataListElement')
|
||||
addHTMLElement('HTMLDataListElement', needsAbstract=['options'])
|
||||
addHTMLElement('HTMLDirectoryElement')
|
||||
addHTMLElement('HTMLDListElement')
|
||||
addHTMLElement('HTMLElement')
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
use dom::bindings::codegen::HTMLDataListElementBinding;
|
||||
use dom::bindings::codegen::InheritTypes::HTMLDataListElementDerived;
|
||||
use dom::bindings::codegen::InheritTypes::{HTMLDataListElementDerived, NodeCast};
|
||||
use dom::bindings::js::JS;
|
||||
use dom::document::Document;
|
||||
use dom::element::HTMLDataListElementTypeId;
|
||||
|
@ -41,10 +41,10 @@ impl HTMLDataListElement {
|
|||
}
|
||||
|
||||
impl HTMLDataListElement {
|
||||
pub fn Options(&self) -> JS<HTMLCollection> {
|
||||
// FIXME: https://github.com/mozilla/servo/issues/1842
|
||||
let doc = self.htmlelement.element.node.owner_doc();
|
||||
let doc = doc.get();
|
||||
HTMLCollection::new(&doc.window, ~[])
|
||||
pub fn Options(&self, abstract_self: &JS<HTMLDataListElement>) -> JS<HTMLCollection> {
|
||||
let node: JS<Node> = NodeCast::from(abstract_self);
|
||||
let doc = &self.htmlelement.element.node.owner_doc();
|
||||
let window = &doc.get().window;
|
||||
HTMLCollection::by_tag_name(window, &node, ~"option")
|
||||
}
|
||||
}
|
||||
|
|
20
src/test/content/test_document_datalist_options.html
Normal file
20
src/test/content/test_document_datalist_options.html
Normal file
|
@ -0,0 +1,20 @@
|
|||
<html>
|
||||
<head>
|
||||
<script src="harness.js"></script>
|
||||
</head>
|
||||
<datalist id="id">
|
||||
<option value="A">
|
||||
<option value="B">
|
||||
<p>P</p>
|
||||
<div>DIV</div>
|
||||
<option value="C">
|
||||
</datalist>
|
||||
<script>
|
||||
var datalist = document.getElementById("id");
|
||||
is(datalist.options.length, 3);
|
||||
is_a(datalist.options[0], HTMLOptionElement);
|
||||
is_a(datalist.options[1], HTMLOptionElement);
|
||||
is_a(datalist.options[2], HTMLOptionElement);
|
||||
finish();
|
||||
</script>
|
||||
</html>
|
Loading…
Add table
Add a link
Reference in a new issue