Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用JQuery添加动态HTML而无需硬编码?_Javascript_Jquery_Html - Fatal编程技术网

Javascript 使用JQuery添加动态HTML而无需硬编码?

Javascript 使用JQuery添加动态HTML而无需硬编码?,javascript,jquery,html,Javascript,Jquery,Html,假设您有一些JavaScript(带有JQuery)代码,可以向现有页面添加一些HTML,如: var span = "<span>Text</span>"; some_div_element.append(span); var span=“Text”; 一些div元素。append(span); 有没有办法在不硬编码span的情况下实现这一点?如果我想添加一大部分代码,在JavaScript代码中间硬编码是不正确的。 < P> > jQuery加载函数实际上是相当容

假设您有一些JavaScript(带有JQuery)代码,可以向现有页面添加一些HTML,如:

var span = "<span>Text</span>";
some_div_element.append(span);
var span=“Text”;
一些div元素。append(span);

有没有办法在不硬编码span的情况下实现这一点?如果我想添加一大部分代码,在JavaScript代码中间硬编码是不正确的。

< P> > jQuery加载函数

实际上是相当容易的。
<html> 
  <head> 
    <script src="jquery.js"></script> 
    <script> 
    $(function(){
      $("#includehtml").load("loadme.html"); 
    });
    </script> 
  </head> 

  <body> 
     <div id="includehtml"></div>
  </body> 
</html>

$(函数(){
$(“#includehtml”).load(“loadme.html”);
});

通过这种方式,您可以将额外的html放在不同的html文件中,只需使用load函数将其加载即可。html可以是您想要的最短或最长,而不会使原始页面膨胀<在这种情况下,code>loadme.html需要存储在服务器上的同一路径中。

使用jquery load函数实际上相当容易

<html> 
  <head> 
    <script src="jquery.js"></script> 
    <script> 
    $(function(){
      $("#includehtml").load("loadme.html"); 
    });
    </script> 
  </head> 

  <body> 
     <div id="includehtml"></div>
  </body> 
</html>

$(函数(){
$(“#includehtml”).load(“loadme.html”);
});
通过这种方式,您可以将额外的html放在不同的html文件中,只需使用load函数将其加载即可。html可以是您想要的最短或最长,而不会使原始页面膨胀<在这种情况下,code>loadme.html需要存储在服务器上的同一路径中。

从jQuery文档中,可以传递
.append()
jQuery元素,如下所示:

$("#some_div_element").append( $("span") );
使用此功能,您可以使用
display:none
轻松地在HTML中的某个地方构建
span
元素,然后在Javascript代码中获取/编辑/附加它。

从jQuery文档中,您可以传递
.append()
jQuery元素,如下所示:

$("#some_div_element").append( $("span") );

使用此功能,您可以使用
display:none
轻松地在HTML中的某个地方构建
span
元素,然后在Javascript代码中获取/编辑/附加它。

如果您不想直接插入HTML,那么您可以使用Javascript创建元素,然后分别应用这些属性。但是,您必须编写大量代码。除非您打算重用这些元素,否则我认为您应该坚持直接插入html。它更简单、更高效。 下面是一个示例代码:

var btn=document.createElement(“按钮”);//创建一个元素
var t=document.createTextNode(“单击我”);//创建一个文本节点
附件(t);//将文本附加到
文件.正文.附件(btn);

如果不想直接插入html,那么可以使用javascript创建元素,然后分别应用这些属性。但是,您必须编写大量代码。除非您打算重用这些元素,否则我认为您应该坚持直接插入html。它更简单、更高效。 下面是一个示例代码:

var btn=document.createElement(“按钮”);//创建一个元素
var t=document.createTextNode(“单击我”);//创建一个文本节点
附件(t);//将文本附加到
文件.正文.附件(btn);

然后创建可重用的函数

function getMeSpan(myText) {
  var span = document.createElement('span');
  span.innerText = myText;
  return span;
};

someOtherDIV.appendChild(getMeSpan('hello'));
someOtherDIV.appendChild(getMeSpan('world!'));

然后创建可重用的函数

function getMeSpan(myText) {
  var span = document.createElement('span');
  span.innerText = myText;
  return span;
};

someOtherDIV.appendChild(getMeSpan('hello'));
someOtherDIV.appendChild(getMeSpan('world!'));

您可以研究一些模板语言,例如HandleBars,您可以将HTML存储在文件中并动态加载。请参阅:您可以研究一些模板语言,例如HandleBars,您可以将HTML存储在文件中并动态加载。看:我怎么不知道呢!?非常感谢。我怎么不知道呢!?非常感谢。这不是问题所在,问题在于有非常大的代码段,而没有硬编码。使用.load()对我来说很有用。谢谢。这不是问题所在,问题在于有非常大的代码段,而不是硬编码。使用.load()对我来说很有用。谢谢。这将是一个很好的方法,是的,在某些情况下很有用。对于我的情况,.load()选项更好。谢谢。这将是一个很好的方法,是的,在某些情况下很有用。对于我的情况,.load()选项更好。谢谢,我不知道这件事。这将在将来非常有用,谢谢。我不知道这件事。这将在将来非常有用,谢谢。