js变量连接引入<script>文件问题

JavaScript019

js变量连接引入<script>文件问题,第1张

看的出来,你不懂浏览器解释标签的顺序。你百度一下就知道了,我这里只是说一下结果。

浏览器在执行脚本前,要把所有的脚本导进来。怎么导进来,直接认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>'

if(!(/^\d$/.test(val)))

{

alert("请输入数字")

}

这种写法 你输入一个数字的时候是正确的,当你输入两位以上的数字的时候肯定会提示你“只能输入数字”,\d的意思是0-9之中的任意一个数字,任意【一个】,所以输入多的时候就是错误的,^意思是匹配的字符在最前面,好像在这边没有什么用。

用isNaN()来判断,isNaN() 函数用于检查其参数是否是非数字值。代码如下:

<script>

function sz(){

var nb=document.getElementById("nb").value

if(nb=""||isNaN(nb))

{alert("请输入正确的数字值!") }

else{alert("是数字!")}

}

</script>

还有js中有一个val的方法,尽量不要用它做变量名哦。

希望对你有帮助,望采纳!