如何使用span添加jquery函数onclick?
现在我有这样的范围,我想在其中添加提交功能:
<input type="radio" name="language" id="engl" value="Engl" checked>
<span class="division" onclick="document.getElementById('engl').checked = true">English</span>
我尝试在代码中添加:
$('span.division').change(function() {
$('#search-form').submit();
});
但没有结果。当然我试图将“名称”添加到“跨度”它也没有结果。这是我的jquery-code:
<script type='text/javascript'>
$(function(){
$('input[name=language]').change(function() {
$('#search-form').submit();
});
$("form#search-form").submit(function(){
$("#results").fadeOut();
$.ajax({
type:"GET",
data: $(this).serialize(),
url: "search.php",
success: function(msg)
{
$("#results").html(msg);
$("#results").fadeIn();
}
});
return false;
});
});
</script>
我的错误在哪里?我怎么能正确地做到这一点?
答案 0 :(得分:1)
对范围使用click
事件而不是更改事件,并将提交绑定功能移至文档ready
。我刚刚用你的代码做了一些清理工作。这应该有用。
<script type='text/javascript'>
$(function(){
$('span.division').click(function() {
$('#search-form').submit();
});
$("form#search-form").submit(function(e){
e.preventDefault();
$("#results").fadeOut();
$.ajax({
type:"GET",
data: $(this).serialize(),
url: "search.php",
success: function(msg){
$("#results").html(msg).fadeIn();
}
});
});
});
</script>
答案 1 :(得分:1)
将jQuery on()
方法与事件click
一起使用而不是更改:
$('span.division').on("click", function() {
$('#search-form').submit();
});
但请注意,这可能会影响您通过内联onclick="..."
在您的范围内定义的点击事件!