load_include.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. function load_include(title, name, p_data) {
  2. var o_data = document.getElementById(name);
  3. var url = "/api/w/" + encodeURI(title) + "?include=" + name;
  4. var xhr = new XMLHttpRequest();
  5. xhr.open("GET", url, true);
  6. xhr.send(null);
  7. xhr.onreadystatechange = function() {
  8. if(this.readyState === 4 && this.status === 200) {
  9. var o_p_data = JSON.parse(this.responseText);
  10. var g_data = o_p_data['data'];
  11. for(key in p_data) {
  12. try {
  13. var patt = new RegExp('@' + p_data[key][0] + '@', 'g');
  14. g_data = g_data.replace(patt, p_data[key][1]);
  15. patt = new RegExp(encodeURIComponent('@' + p_data[key][0] + '@', 'g'));
  16. g_data = g_data.replace(patt, encodeURIComponent(p_data[key][1]));
  17. } catch(e) {
  18. console.log(e);
  19. }
  20. }
  21. o_data.innerHTML = g_data;
  22. js_data = o_p_data['js_data'];
  23. js_data = js_data.replace(/<script>/g, '');
  24. js_data = js_data.replace(/<\/script>/g, '\n');
  25. eval(js_data)
  26. }
  27. }
  28. }