为啥jquery在我的html中不能用?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥jquery在我的html中不能用?相关的知识,希望对你有一定的参考价值。
html是EditPlus模板样,代码如下:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>Document</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"/>
<script type="text/javascript">
$(document).ready(function()
alert("");
);
function clickBtn()
alert($("#txt").val());
</script>
</head>
<body>
<table>
<tr>
<td><select id="select">
<option>-- 请选择 --</option>
<option value='1'>heiehi</option>
<option value='2'>enen</option>
</select></td>
<td><input id="txt" type="text" value="1222"/></td>
<td>
<button type='button' onclick="javascript:clickBtn()">按钮</button>
</td>
</tr>
</table>
</body>
</html>
可是页面进去就没弹窗,点击按钮js报错:Uncaught ReferenceError: clickBtn is not defined
如果是获取值,我想楼上的那位朋友他已经说过了,是说可以成功的,但是如果获取事件估计就不行了。我所说的事件是指$('.inner-message a').click或者$('.inner-message a').hover这种。
造成这个问题的原因,是因为jquery他的事件机制是当页面完全加载成功后,会根据所有目前页面上符合要求的dom添加事件标示,这样当你触发事件的时候,拥有该事件标示的DOM就会给予响应。
但你这个append很可能是页面加载完成后,再触发的事件,这样的话,很可能你这个标示初始化的时候就没有成功加上,所以你不能简单的使用click或hover这种方法,而要用另外一个写法。
$('.inner-message a').live('click',function())
类似这种写法,也就是使用live方法就可以了,这个也是大部分jquery无法响应的事件的解决方式,希望可以帮到你~
打字不易,如满意,望采纳。追问
$(document).ready(function()
$("button").live("click",function()
alert($("#txt").val());
);
);
仍然无效
//script是双标签 应修改为
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
望采纳 Thx
追问还是不成功
参考技术B 是你这句话 <script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"/>有错误 参考技术C <script type="text/javascript">$(document).ready(function ()
alert("");
);
</script>
<script type="text/javascript">
function clickBtn()
alert($("#txt").val());
</script>
javascript拆开,不要写在一个里面,他们不是一类,还有你的 alert("");这里有点问题,已测试按钮可以点本回答被提问者采纳
以上是关于为啥jquery在我的html中不能用?的主要内容,如果未能解决你的问题,请参考以下文章
为啥 jQuery click 事件在我的多步骤表单中不能多次工作?