js变量连接引入<script>文件问题
我想在我js变量中连接<scriptsrc='xx.php'></script>并且输出出来应该怎么写呢?js中主要是动态往html中添加元素的!但是发现变脸中直接写<s...
我想在我js变量中连接<script src='xx.php'></script>并且输出出来应该怎么写呢?js中主要是动态往html中添加元素的!但是发现变脸中直接写<script src='xx.php'></script>会出去,转义了<\/script>也不行,把script分来也不行,郁闷了!
下面是核心代码:
var html ='<div class="post"><script src="./pl/more/index0.php"></script></div>';
$(".ffclass").append(html); 展开
下面是核心代码:
var html ='<div class="post"><script src="./pl/more/index0.php"></script></div>';
$(".ffclass").append(html); 展开
2个回答
展开全部
看的出来,你不懂浏览器解释标签的顺序。你百度一下就知道了,我这里只是说一下结果。
浏览器在执行脚本前,要把所有的脚本导进来。怎么导进来,直接认script标签。也就是说,浏览器还在不知道是不是变量的前提下,先解释了你的 script 标签。然后发现是错误的!!错误在哪?它把你变量的</script>认作结束标签了。(呵呵,毕竟是机器语言,没那么智能,你必须了解它的执行顺序。)然后它把整个String语句弄成错误语句了,就直接把后面输出了。
所以直接答案就是不能让它认做script的结束标签,你要写成类似于这样:
var html ='<div class="post"><' + 'script' + ' src="top.html" ></'+'script'+'></div>';
先让浏览器的解释器看不出来是结束标签,之后在组装成标签,在append。
哦对了,还有两点要和你说,也许你知道,一个是你用的jquery,必须等所有html文档结构都读进来后才能append,所以你必须把这个核心代码放到 $(function($){ })里面。(不明白就差api中的jQuery(callback)章节)
二一个是你导入的是php,看的出不是脚本语言,你要把它当作text读进来,所以你要加个type="text",像这样:
var html ='<div class="post"><' + 'script' + ' src="top.html" type="text" ></'+'script'+'></div>';
浏览器在执行脚本前,要把所有的脚本导进来。怎么导进来,直接认script标签。也就是说,浏览器还在不知道是不是变量的前提下,先解释了你的 script 标签。然后发现是错误的!!错误在哪?它把你变量的</script>认作结束标签了。(呵呵,毕竟是机器语言,没那么智能,你必须了解它的执行顺序。)然后它把整个String语句弄成错误语句了,就直接把后面输出了。
所以直接答案就是不能让它认做script的结束标签,你要写成类似于这样:
var html ='<div class="post"><' + 'script' + ' src="top.html" ></'+'script'+'></div>';
先让浏览器的解释器看不出来是结束标签,之后在组装成标签,在append。
哦对了,还有两点要和你说,也许你知道,一个是你用的jquery,必须等所有html文档结构都读进来后才能append,所以你必须把这个核心代码放到 $(function($){ })里面。(不明白就差api中的jQuery(callback)章节)
二一个是你导入的是php,看的出不是脚本语言,你要把它当作text读进来,所以你要加个type="text",像这样:
var html ='<div class="post"><' + 'script' + ' src="top.html" type="text" ></'+'script'+'></div>';
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询