AJAX
[ class tree: AJAX ] [ index: AJAX ] [ all elements ]

Source for file setInnerHTML.php

Documentation is available at setInnerHTML.php

  1. <?php
  2. /**
  3.  * HTML_AJAX_Util.setInnerHTML tests
  4.  * 
  5.  * @category   HTML
  6.  * @package    AJAX
  7.  * @author     Joshua Eichorn <josh@bluga.net>
  8.  * @copyright  2006 Joshua Eichorn
  9.  * @license    http://www.opensource.org/licenses/lgpl-license.php  LGPL
  10.  * @version    Release: @package_version@
  11.  * @link       http://pear.php.net/package/HTML_AJAX
  12.  */
  13.  
  14. ?>
  15. <html>
  16. <head>
  17. <style type="text/css">
  18.     div {
  19.         padding: 1em;
  20.         margin: 1em;
  21.         border: solid 1px black;
  22.     }
  23.     pre {
  24.         padding: 1em;
  25.         border: dotted 1px black;
  26.     }
  27. </style>
  28. <script type="text/javascript" src="../server.php?client=util"></script>
  29. <script type="text/javascript">
  30. function test(compareto,input,mode) {
  31.     if (compareto == true) {
  32.         compareto = input;
  33.     }
  34.     document.getElementById('input').innerHTML = HTML_AJAX_Util.htmlEscape(input);
  35.     HTML_AJAX_Util.setInnerHTML('target',input,mode);
  36.     document.getElementById('source').innerHTML = HTML_AJAX_Util.htmlEscape(document.getElementById('target').innerHTML);
  37.  
  38.     document.getElementById('status').innerHTML = 'Test Successful';
  39.     document.getElementById('status').style.color = 'green';
  40.     if (compareto == false) {
  41.         document.getElementById('status').innerHTML = 'Nothing to compare against';
  42.         document.getElementById('status').style.color = 'yellow';
  43.         return;
  44.     }
  45.     if (compareto != document.getElementById('target').innerHTML) {
  46.         document.getElementById('status').innerHTML = 'Test Failed';
  47.         document.getElementById('status').style.color = 'red';
  48.     }
  49. }
  50. function test1() {
  51.     test(true,'<script type="text/javascript">alert("hello world");</'+'script>');
  52. }
  53. function test2() {
  54.     test(true,'<div id="blah">Blah Blah</div><script type="text/javascript">document.getElementById("target").style.color = "blue";</'+'script><div>blah blah</div>');
  55. }
  56. function test3() {
  57.     test(true,'<script type="text/javascript">function blah() { document.getElementById("target").style.color = "blue"; }</'+'script><div>Blah Blah</div><script type="text/javascript">blah();</'+'script><div>blah blah</div>');
  58. }
  59. function test4() {
  60.     test(true,'<script type="text/javascript">function blah() { document.getElementById("target").style.color = "blue"; }</'+'script>'+"\n"+
  61.         '<form><fieldset><legend>Fieldset</legend>'+"\n"+
  62.         '<div>Blah Blah</div>'+"\n"+
  63.         '<script type="text/javascript">blah();</'+'script>'+"\n"+
  64.         '<div>blah blah</div></fieldset></form>');
  65. }
  66. function test5() {
  67.     test(false,'<div>start</div>');
  68.     test('<div>Add</div><div>start</div>','<div>Add</div>','prepend');
  69. }
  70. function test6() {
  71.     test(false,'<div>start</div>');
  72.     test('<div>start</div><div>Add</div>','<div>Add</div>','append');
  73. }
  74. function test7() {
  75.     test(false,'<img src="http://phpdoc.org/images/logo-trans.png" onload="this.style.border = \'solid 10px orange\'">');
  76. }
  77. function test8() {
  78.     test(false,'<script type="text/javascript">document.write("Hello World")</'+'script>');
  79. }
  80. function test9() {
  81.     test(false,'<script type="text/javascript" src="setInnerHTML.js"></'+'script>');
  82. }
  83. function test10() {
  84.     test(false,'<script type="text/javascript">function blah() { document.getElementById("target").style.color = "blue"; }</'+'script>Test');
  85.     blah();
  86. }
  87. function test11() {
  88.     HTML_AJAX_Util.setInnerHTML('target','<p>blah</p>');
  89.     HTML_AJAX_Util.setInnerHTML('target','<p>blah</a>');
  90. }
  91. function test12() {
  92.     test(false,'<div id="test12">Blah</div><script type="text/javascript">document.getElementById("test12").style.color = "orange";</s'+'cript>');
  93. }
  94. function test13() {
  95.          test(false, '<script type="text/javascript">\n<!--\n alert("hello world from comments!");\n//-->\n</' + 'script>');
  96. }
  97. function test14() {
  98.          test(false, '<script type="text/javascript">\n<![CDATA[\n alert("hello world from cdata comments!");\n]]>\n</' + 'script>');
  99. }
  100. </script>
  101. </head>
  102. <body>
  103. <ol>
  104.     <li><a href="javascript:test1()">Basic Test just a script block</a></li>
  105.     <li><a href="javascript:test2()">Script block with content before and after</a></li>
  106.     <li><a href="javascript:test3()">Script content Script content</a></li>
  107.     <li><a href="javascript:test4()">Script form content Script content /form</a></li>
  108.     <li><a href="javascript:test5()">Prepend</a></li>
  109.     <li><a href="javascript:test6()">Append</a></li>
  110.     <li><a href="javascript:test7()">onload</a></li>
  111.     <li><a href="javascript:test8()">document.write</a></li>
  112.     <li><a href="javascript:test9()">load an external js file</a></li>
  113.     <li><a href="javascript:test10()">Create a function and call it in the parent scope</a></li>
  114.     <li><a href="javascript:test11()">Replace/Replace make sure default mode is detected properly</a></li>
  115.     <li><a href="javascript:test12()">Use an element adding in this set latter in the process</a></li>
  116.     <li><a href="javascript:test13()">Script inside comment</a></li>
  117.     <li><a href="javascript:test14()">Script inside cdata comment</a></li>
  118. </ol>
  119.  
  120. <div id="status"></div>
  121.  
  122. <h3>Input String</h3>
  123. <pre id="input">
  124. </pre>
  125.  
  126. <h3>HTML Source Output</h3>
  127. <pre id="source">
  128. </pre>
  129.  
  130. <h3>Normal Output</h3>
  131. <div id="target">
  132. </div>

Documentation generated on Sat, 05 May 2007 18:00:23 -0400 by phpDocumentor 1.3.0. PEAR Logo Copyright © PHP Group 2004.