Browse Source

disabled/selected HTML attributes have a value assigned to be valid XHTML

Pi 1 year ago
parent
commit
745ed5e02c

+ 3 - 3
app/rest/templates/option.tpl

@@ -1,5 +1,5 @@
-% disabled = (get("disabled", False) and "disabled") or ""
-% selected = (get("selected", False) and "selected") or ""
+% disabled = (get("disabled", False) and 'disabled="true"') or ""
+% selected = (get("selected", False) and 'selected="true"') or ""
 % display = get("display", value)
 % display = get("display", value)
 % setdefault("indent", "  ")
 % setdefault("indent", "  ")
-{{indent}}<option value="{{value}}" {{disabled}} {{selected}}>{{display}}</option>
+{{indent}}<option value="{{value}}" {{!disabled}} {{!selected}}>{{display}}</option>

+ 4 - 4
test/rest/templates/test_include-exclude.py

@@ -13,19 +13,19 @@ from bottle import template
 <div class="pure-u-1">
 <div class="pure-u-1">
 
 
 <select id="item-include" name="item" size=10 multiple style="width: calc(100% - 1em); margin: 0 1em 1em">
 <select id="item-include" name="item" size=10 multiple style="width: calc(100% - 1em); margin: 0 1em 1em">
-  <option value="Include" disabled >Include</option>
+  <option value="Include" disabled="true" >Include</option>
 
 
   <option value="val1-to-backend"  >val1</option>
   <option value="val1-to-backend"  >val1</option>
-  <option value="val2" disabled >val2</option>
+  <option value="val2" disabled="true" >val2</option>
 </select>
 </select>
 </div>
 </div>
 <div class="pure-u-1">
 <div class="pure-u-1">
 
 
 <select id="item-exclude" name="item" size=10 multiple style="width: calc(100% - 1em); margin: 0 1em 1em">
 <select id="item-exclude" name="item" size=10 multiple style="width: calc(100% - 1em); margin: 0 1em 1em">
-  <option value="Exclude" disabled >Exclude</option>
+  <option value="Exclude" disabled="true" >Exclude</option>
 
 
   <option value="val1-to-backend"  >val1</option>
   <option value="val1-to-backend"  >val1</option>
-  <option value="val2" disabled >val2</option>
+  <option value="val2" disabled="true" >val2</option>
 </select>
 </select>
 </div>
 </div>
   </div>
   </div>

+ 3 - 3
test/rest/templates/test_options.py

@@ -3,7 +3,7 @@ from bottle import template
 
 
 @mark.parametrize('expected, params', [
 @mark.parametrize('expected, params', [
     ("""<optgroup label="Group">
     ("""<optgroup label="Group">
-  <option value="val-to-backend"  selected>val-displayed</option>
+  <option value="val-to-backend"  selected="true">val-displayed</option>
 </optgroup>""", {
 </optgroup>""", {
     "optgroup": "Group", "options": [
     "optgroup": "Group", "options": [
     {
     {
@@ -12,7 +12,7 @@ from bottle import template
         "display": "val-displayed",
         "display": "val-displayed",
     }, ] }),
     }, ] }),
     ("""<optgroup label="Group">
     ("""<optgroup label="Group">
-  <option value="val-to-backend" disabled >val-to-backend</option>
+  <option value="val-to-backend" disabled="true" >val-to-backend</option>
 </optgroup>""", { "optgroup": "Group", "options": [
 </optgroup>""", { "optgroup": "Group", "options": [
     {
     {
         "value": "val-to-backend",
         "value": "val-to-backend",
@@ -20,7 +20,7 @@ from bottle import template
     }, ] }),
     }, ] }),
     ("""<optgroup label="Group">
     ("""<optgroup label="Group">
   <option value="val1-to-backend"  >val1</option>
   <option value="val1-to-backend"  >val1</option>
-  <option value="val2-to-backend" disabled >val2-to-backend</option>
+  <option value="val2-to-backend" disabled="true" >val2-to-backend</option>
 </optgroup>""", { "optgroup": "Group", "options": [
 </optgroup>""", { "optgroup": "Group", "options": [
     {
     {
         "value": "val1-to-backend",
         "value": "val1-to-backend",

+ 1 - 1
test/rest/templates/test_select-one.py

@@ -20,7 +20,7 @@ from bottle import template
   <option value="L"  >L</option>
   <option value="L"  >L</option>
   <option value="Pieces"  >Pieces</option>
   <option value="Pieces"  >Pieces</option>
   <option value="g"  >g</option>
   <option value="g"  >g</option>
-  <option value="kg"  selected>kg</option>
+  <option value="kg"  selected="true">kg</option>
   <option value="mL"  >mL</option>
   <option value="mL"  >mL</option>
 </select>
 </select>
 </div></div>
 </div></div>

+ 6 - 6
test/rest/templates/test_select.py

@@ -6,10 +6,10 @@ from bottle import template
     ("""<div class="pure-u-1">
     ("""<div class="pure-u-1">
 <label for="select-id">Choose: </label>
 <label for="select-id">Choose: </label>
 <select id="select-id" name="select-name" size=10 multiple style="width: calc(100% - 1em); margin: 0 1em 1em">
 <select id="select-id" name="select-name" size=10 multiple style="width: calc(100% - 1em); margin: 0 1em 1em">
-  <option value="hint" disabled >hint</option>
+  <option value="hint" disabled="true" >hint</option>
 <optgroup label="Group">
 <optgroup label="Group">
   <option value="val1-to-backend"  >val1</option>
   <option value="val1-to-backend"  >val1</option>
-  <option value="val2" disabled >val2</option>
+  <option value="val2" disabled="true" >val2</option>
 </optgroup>
 </optgroup>
 </select>
 </select>
 </div>""", {
 </div>""", {
@@ -29,7 +29,7 @@ from bottle import template
 
 
 
 
   <option value="val1"  >val1</option>
   <option value="val1"  >val1</option>
-  <option value="val2"  selected>val2</option>
+  <option value="val2"  selected="true">val2</option>
 </select>
 </select>
 </div>""",{
 </div>""",{
     "id": "select-unit-id", "name": "unit", "children": [{ "options": [
     "id": "select-unit-id", "name": "unit", "children": [{ "options": [
@@ -43,14 +43,14 @@ from bottle import template
     ("""<div class="pure-u-1">
     ("""<div class="pure-u-1">
 <label for="select-id">Choose: </label>
 <label for="select-id">Choose: </label>
 <select id="select-id" name="select-name" size=10 multiple style="width: calc(100% - 1em); margin: 0 1em 1em">
 <select id="select-id" name="select-name" size=10 multiple style="width: calc(100% - 1em); margin: 0 1em 1em">
-  <option value="hint" disabled >hint</option>
+  <option value="hint" disabled="true" >hint</option>
 <optgroup label="Group">
 <optgroup label="Group">
   <option value="val1-to-backend"  >val1</option>
   <option value="val1-to-backend"  >val1</option>
-  <option value="val2" disabled >val2</option>
+  <option value="val2" disabled="true" >val2</option>
 </optgroup>
 </optgroup>
 
 
   <option value="val1"  >val1</option>
   <option value="val1"  >val1</option>
-  <option value="val2"  selected>val2</option>
+  <option value="val2"  selected="true">val2</option>
 </select>
 </select>
 </div>""",{
 </div>""",{
     "id": "select-id", "label": "Choose: ", "name": "select-name",
     "id": "select-id", "label": "Choose: ", "name": "select-name",