Comment invoquer NicEdit (editbox) ou jquery (datepicker zone de texte) après une XMLHttpRequest?

StackOverflow https://stackoverflow.com/questions/1142466

Question

Besoin d'aide (ou un exemple) que je ne semble pas être en mesure d'invoquer datepick jquery ou NicEdit lors de l'utilisation XMLHttpRequest.

Mon code est livré avec 4 fichiers php:

<p>Main page:&nbsp;main.php<br />
  ++++++++++++++++++<br />
  &lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;<br />
  &lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;<br />
  &lt;head&gt;<br />
  &lt;meta http-equiv=&quot;content-type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;<br />
  &lt;title&gt;Education Centre&lt;/title&gt;<br />
  &lt;link href=&quot;style.css&quot; rel=&quot;stylesheet&quot; type=&quot;text/css&quot; media=&quot;screen&quot; /&gt;<br />
  &lt;script type=&quot;text/javascript&quot; src=&quot;script.js&quot;&gt;&lt;/script&gt;<br />
  &lt;script type=&quot;text/javascript&quot; src=&quot;mainjs.js&quot;&gt;&lt;/script&gt;<br />
  &lt;script src=&quot;http://js.nicedit.com/nicEdit-latest.js&quot; type='text/javascript'&gt;&lt;/script&gt;<br />
  &lt;script type=&quot;text/javascript&quot;&gt;bkLib.onDomLoaded(nicEditors.allTextAreas);&lt;/script&gt;</p>
<p>&lt;/head&gt;<br />
  &lt;body onLoad=&quot;init_table();&quot;&gt;<br />
  &lt;div id=&quot;page&quot;&gt;<br />
  &lt;form name='form1'&gt;<br />
  &lt;p&gt;&amp;nbsp;&lt;/p&gt;<br />
  &lt;div id=&quot;content&quot;&gt;<br />
  &lt;div id=&quot;showTable&quot;&gt;        &lt;/div&gt;<br />
  &lt;/div&gt;<br />
  &lt;/form&gt;<br />
  &lt;/div&gt;<br />
  &lt;!-- end page --&gt;<br />
  &lt;/body&gt;<br />
  &lt;/html&gt;<br />
</p>
<br />


<p>mainjs.js<br />
  +++++++++<br />
  function init_table() {<br />
  requestInfo('showMain.php?mode=list&amp;prev_cid=1','showTable','');<br />
  }</p>
<p>&nbsp;</p>
<p>script.js [copied and tested to be ok with other pages]<br />
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++<br />
  function getHTTPObject() {<br />
  var xmlhttp;<br />
  <br />
  if(window.XMLHttpRequest){<br />
  xmlhttp = new XMLHttpRequest();<br />
  }<br />
  else if (window.ActiveXObject){<br />
  xmlhttp=new ActiveXObject(&quot;Microsoft.XMLHTTP&quot;);<br />
  if (!xmlhttp){<br />
  xmlhttp=new ActiveXObject(&quot;Msxml2.XMLHTTP&quot;);<br />
  }<br />
  <br />
  }<br />
  return xmlhttp;<br />
  }</p>
<p>var http = getHTTPObject(); // We create the HTTP Object</p>
<p>function requestInfo(url,id,redirectPage) { <br />
  var temp=new Array();<br />
  http.open(&quot;GET&quot;, url, true);<br />
  http.onreadystatechange = function() {<br />
  if (http.readyState == 4) {<br />
  if(http.status==200) {<br />
  var results=http.responseText;<br />
  if(redirectPage==&quot;&quot; || results!=&quot;1&quot;) {<br />
  var temp=id.split(&quot;~&quot;); // To display on multiple div <br />
  var r=results.split(&quot;~&quot;); // To display multiple data into the div <br />
  if(temp.length&gt;1) {<br />
  for(i=0;i&lt;temp.length;i++) { <br />
  document.getElementById(temp[i]).innerHTML=r[i];<br />
  }<br />
  } else {<br />
  document.getElementById(id).innerHTML = results;<br />
  } <br />
  <br />
  } else {<br />
  window.location.href=redirectPage; <br />
  }<br />
  } <br />
  }<br />
  };<br />
  http.send(null);<br />
  }<br />
</p>

<br />
<p>showMain.php<br />
  ++++++++++++<br />
  &lt;?php<br />
header('Content-Type: text/xml');</p>
<p>//include(&quot;config.php&quot;);<br />
  //include(&quot;mysql.lib.php&quot;);<br />
  //$obj=new connect;<br />
  <br />
  $netwkinfo = &quot;Some information pulled from database&quot;;<br />
  echo &quot;&lt;table&gt;&quot;;<br />
  echo &quot;&lt;tr&gt;&lt;td&gt;My Data&lt;/td&gt; &lt;td&gt;&lt;textarea id='netwkinfo' cols='75' rows='5' &gt;&quot; . $netwkinfo . &quot;&lt;/textarea&gt;&lt;/td&gt;&lt;/tr&gt;&quot;;<br />
  echo &quot;&lt;/tr&gt;&quot;;<br />
  echo &quot;&lt;/table&gt;&quot;;<br />
  ?&gt;<br />
</p>

showMain.php est un fichier qui extrait des données d'une base de données à afficher / éditer etc ... mais, pour simplifier, attribuer une valeur à netwkinfo $.

Ce que j'aimerai voir est fonction NicEdit (panneau) montré au editbox. Malheureusement, je ne suis pas le voir, juste une boîte d'édition apparaît plaine. Qu'est-ce qui pourrait être mal et comment dois-je corriger pour que cela fonctionne.

De même IF je datepicker jquery sur une zone de texte dans le showmain.php, je ne suis pas voir ça marche aussi. Je pense que le même concept, mais ne pouvais pas comprendre comment les faire fonctionner.

Appréciez toute aide ici. Merci.

Était-ce utile?

La solution 2

Nous avons trouvé l'indice à la réponse .

n'ont pas encore réussi à mettre en œuvre NicEdit mais datepicker pour jquery a été résolu.

pour datepicker je:

$(function(){
  $('.inputDate').live('click', function() {
    $(this).datepicker({
      starts: 1,
      position: 'right',
      onChange: function(formated, dates){
        $('#inputDate').val(formated);
        $('#inputDate').DatePickerHide();
      }
    });
  });
});

Autres conseils

Puisque vous avez déjà jQuery sur la page pourquoi ne pas utiliser ses fonctionnalités AJAX Vos fichiers de script sera beaucoup plus facile à lire.

mainjs.js

function init_table() {
    requestInfo('showMain.php?mode=list&prev_cid=1','showTable','');
}

script.js

    function requestInfo(url,id,redirectPage) { 
    $.ajax({  type: "POST",
      url: url,
      data: id,
      success: function(msg){
      var temp = id.split('~');
      var r= msg.split("~")
      for (i=0;i<temp.length;i+=1){
         $(temp[i]).val(r[i]);
      }

      $(document).location.href = redirectPage;
   });
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top