Fix for #1944. Added nodeName and tagName to jQuery.props and tests for maxlength...
authorBrandon Aaron <brandon.aaron@gmail.com>
Mon, 19 Nov 2007 16:07:44 +0000 (16:07 +0000)
committerBrandon Aaron <brandon.aaron@gmail.com>
Mon, 19 Nov 2007 16:07:44 +0000 (16:07 +0000)
src/core.js
test/index.html
test/unit/core.js

index 36d736c..a42e8f6 100644 (file)
@@ -1206,7 +1206,9 @@ jQuery.extend({
                selected: "selected",
                maxlength: "maxLength",
                selectedIndex: "selectedIndex",
-               defaultValue: "defaultValue"
+               defaultValue: "defaultValue",
+               tagName: "tagName",
+               nodeName: "nodeName"
        }
 });
 
index 703354c..80b947d 100644 (file)
@@ -40,7 +40,7 @@
                <ul id="firstUL"></ul>
                <ol id="empty"></ol>
                <form id="form" action="formaction">
-                       <input type="text" name="action" value="Test" id="text1"/>
+                       <input type="text" name="action" value="Test" id="text1" maxlength="30"/>
                        <input type="text" name="text2" value="Test" id="text2" disabled="disabled"/>
                        <input type="radio" name="radio1" id="radio1" value="on"/>
 
@@ -55,7 +55,7 @@
                        
                        <button id="button" name="button">Button</button>
                        
-                       <textarea id="area1">foobar</textarea>
+                       <textarea id="area1" maxlength="30">foobar</textarea>
                        
                        <select name="select1" id="select1">
                                <option id="option1a" value="">Nothing</option>
index c7f1850..229ad2a 100644 (file)
@@ -223,8 +223,9 @@ test("index(Object)", function() {
 });
 
 test("attr(String)", function() {
-       expect(13);
+       expect(20);
        ok( $('#text1').attr('value') == "Test", 'Check for value attribute' );
+       ok( $('#text1').attr('value', "Test2").attr('defaultValue') == "Test", 'Check for defaultValue attribute' );
        ok( $('#text1').attr('type') == "text", 'Check for type attribute' );
        ok( $('#radio1').attr('type') == "radio", 'Check for type attribute' );
        ok( $('#check1').attr('type') == "checkbox", 'Check for type attribute' );
@@ -236,6 +237,12 @@ test("attr(String)", function() {
        ok( $('#name').attr('name') == "name", 'Check for name attribute' );
        ok( $('#text1').attr('name') == "action", 'Check for name attribute' );
        ok( $('#form').attr('action').indexOf("formaction") >= 0, 'Check for action attribute' );
+       ok( $('#text1').attr('maxlength') == '30', 'Check for maxlength attribute' );
+       ok( $('#text1').attr('maxLength') == '30', 'Check for maxLength attribute' );
+       ok( $('#area1').attr('maxLength') == '30', 'Check for maxLength attribute' );
+       ok( $('#select2').attr('selectedIndex') == 3, 'Check for selectedIndex attribute' );
+       ok( $('#foo').attr('nodeName') == 'DIV', 'Check for nodeName attribute' );
+       ok( $('#foo').attr('tagName') == 'DIV', 'Check for tagName attribute' );
        
        $('<a id="tAnchor5"></a>').attr('href', '#5').appendTo('#main'); // using innerHTML in IE causes href attribute to be serialized to the full path
        ok( $('#tAnchor5').attr('href') == "#5", 'Check for non-absolute href (an anchor)' );
@@ -269,7 +276,7 @@ test("attr(Hash)", function() {
 });
 
 test("attr(String, Object)", function() {
-       expect(12);
+       expect(13);
        var div = $("div");
        div.attr("foo", "bar");
        var pass = true;
@@ -292,6 +299,8 @@ test("attr(String, Object)", function() {
        ok( document.getElementById('text1').readOnly == false, 'Set readonly attribute' );
        $("#name").attr('maxlength', '5');
        ok( document.getElementById('name').maxLength == '5', 'Set maxlength attribute' );
+       $("#name").attr('maxLength', '10');
+       ok( document.getElementById('name').maxLength == '10', 'Set maxlength attribute' );
 
        reset();