简单的问题。
当我在外部文件中使用jQuery时,如何在jQuery中使用事件处理程序?
我正在使用phonegap来构建应用程序,并且为了清洁起见,希望将每个jQuery函数保存在不同的js文件中。
但是当我尝试单击事件处理程序绑定到的按钮时,没有任何反应。
事件未被解雇。
我在加载jQuery后调用了js文件,只是想我会说。
谢谢,
亨特
外部JS
$("#getname").click(function()
{
var youruname = localStorage.youruname;
var PostData =
{
youruname: youruname,
};
$.ajax
({
url: "http://www.yellowcabsavannah.com/tag/tag_logout.php",
type: "POST",
data: PostData,
async: false,
dataType: 'json',
cache: false,
success: function(data)
{
//do stuff
}
});
}
});
主文件JS
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>
<script src="http://code.jquery.com/jquery-latest.js" type="text/javascript"></script>
<script type="text/javascript" src="tag.js"></script>
<script type="text/javascript" src="logout.js"></script>
<script src="http://jquery-ui-map.googlecode.com/svn/trunk/ui/min/jquery.ui.map.full.min.js"></script>
<div id="toolbar"><p>Who: <span id="name">Tap To Choose</span> - </p><a href='#' id="tag" class="mapbutton">Tag</a><br /><a href='#' id="logout" class='mapbutton'>Logout</a></div>
答案 0 :(得分:0)
尝试绑定直播或
$("#getname").live('click',function(){...})
$(document).on('click',"#getname",function(){...})
答案 1 :(得分:0)
您的html没有ID为getname
的元素。我假设你想要一个事件绑定到id为name
的元素,所以试试这个:
$("#name").click(function() {
alert("clicked");
});
或者将范围ID从name
更改为getname
所以
<span id="name">Tap To Choose</span>
变为
<span id="getname">Tap To Choose</span>
并且您的事件处理程序$("#getname").click
应该可以正常工作。