mirror of
https://github.com/servo/servo.git
synced 2025-07-22 23:03:42 +01:00
Auto merge of #21052 - tigercosmos:rrr, r=jdm
add TextLength <!-- Please describe your changes on the following line: --> add TextLength in HTMLTextAreaElement --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [ ] These changes fix #__ (github issue number if applicable). <!-- Either: --> - [ ] There are tests for these changes OR - [ ] These changes do not require tests because _____ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/21052) <!-- Reviewable:end -->
This commit is contained in:
commit
0c5b020163
4 changed files with 35 additions and 1 deletions
|
@ -263,6 +263,11 @@ impl HTMLTextAreaElementMethods for HTMLTextAreaElement {
|
|||
self.upcast::<Node>().dirty(NodeDamage::OtherNodeDamage);
|
||||
}
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/#dom-textarea-textlength
|
||||
fn TextLength(&self) -> u32 {
|
||||
self.textinput.borrow().utf16_len() as u32
|
||||
}
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/#dom-lfe-labels
|
||||
fn Labels(&self) -> DomRoot<NodeList> {
|
||||
self.upcast::<HTMLElement>().labels()
|
||||
|
|
|
@ -39,7 +39,7 @@ interface HTMLTextAreaElement : HTMLElement {
|
|||
attribute DOMString defaultValue;
|
||||
[CEReactions,TreatNullAs=EmptyString]
|
||||
attribute DOMString value;
|
||||
// readonly attribute unsigned long textLength;
|
||||
readonly attribute unsigned long textLength;
|
||||
|
||||
// readonly attribute boolean willValidate;
|
||||
// readonly attribute ValidityState validity;
|
||||
|
|
|
@ -346322,6 +346322,12 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"html/semantics/forms/the-textarea-element/textarea-textLength.html": [
|
||||
[
|
||||
"/html/semantics/forms/the-textarea-element/textarea-textLength.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"html/semantics/forms/the-textarea-element/textarea-type.html": [
|
||||
[
|
||||
"/html/semantics/forms/the-textarea-element/textarea-type.html",
|
||||
|
@ -583939,6 +583945,10 @@
|
|||
"7b513a17599ea93eb430a81bbff8d5aa94d07c3c",
|
||||
"manual"
|
||||
],
|
||||
"html/semantics/forms/the-textarea-element/textarea-textLength.html": [
|
||||
"0f9b8cdaace12d4f4e7fbd57a90fcba7e826ced5",
|
||||
"testharness"
|
||||
],
|
||||
"html/semantics/forms/the-textarea-element/textarea-type.html": [
|
||||
"81a270bc3c9304f8b2e7dd526519f4eab7d94f45",
|
||||
"testharness"
|
||||
|
|
|
@ -0,0 +1,19 @@
|
|||
<!DOCTYPE HTML>
|
||||
<title>The textLengh IDL attribute</title>
|
||||
<meta content="charset=utf-16">
|
||||
<link rel="author" title="tigercosmos" href="mailto:phy.tiger@gmail.com">
|
||||
<link rel="help" href="https://html.spec.whatwg.org/multipage/#dom-textarea-textlength">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<textarea id="textarea"></textarea>
|
||||
<script>
|
||||
var textarea = document.getElementById("textarea");
|
||||
|
||||
test(function () {
|
||||
textarea.value= "Hello, World!";
|
||||
assert_equals(textarea.textLength, 13);
|
||||
|
||||
textarea.value = "\u4f60\u597d\uff0c\u4e16\u754c\uff01"; //你好,世界!
|
||||
assert_equals(textarea.textLength, 6);
|
||||
}, "Textarea's 'testLength' should work for utf-16.");
|
||||
</script>
|
Loading…
Add table
Add a link
Reference in a new issue