使用div作为单选按钮的jQuery

使用div作为单选按钮的jQuery,jquery,ajax,Jquery,Ajax,我现在设置为使用div标签触发隐藏的单选按钮。但是,当我单击一次div时,单选按钮会切换,但我必须双击div才能通过ajax发送数据。关于是什么导致了这种情况以及如何修复它,有什么想法吗 jQuery $(function(){ $(".albumcover_tag").click(function(e){ e.stopPropagation(); $('.edit_album').trigger('submit.rails'); });

我现在设置为使用
div
标签触发隐藏的单选按钮。但是,当我单击一次
div
时,单选按钮会切换,但我必须双击div才能通过ajax发送数据。关于是什么导致了这种情况以及如何修复它,有什么想法吗

jQuery

$(function(){
    $(".albumcover_tag").click(function(e){
        e.stopPropagation();
        $('.edit_album').trigger('submit.rails');
    });
    $(".albumcover-item").click(function(e){
        $('.albumcover-item').removeClass("radio-selected");
        $(this).addClass("radio-selected");
        $(this).find('input').click();
        return false;
    });
    $('.albumcover_tag:checked').parent('.albumcover-item').addClass("radio-selected");
});
HTML

<div class="albumcover-item">
    <label for="album_albumcover">Set as Album Cover </label>
    <input class="albumcover_tag" id="album_albumcover_id_2" name="album[albumcover_id]" type="radio" value="2">
</div>

作为专辑封面

注意:我希望能够在单击时启用ajax,而不是双击。

您将在此处找到答案,触发双击时必须取消单击

试试这个:

$(function(){
    $(".albumcover-item").click(function(e){
        $('.albumcover-item').removeClass("radio-selected");
        $(this).addClass("radio-selected");
        $('.edit_album').trigger('submit.rails');
    });
});

我通过将ajax请求移动到div元素的
click()
trigger()来修复它

$(".albumcover-item").click(function(e){
    ...
    $('.edit_album').trigger('submit.rails');
    ...
});

我认为,如果将.click()和.dblclick()添加到同一项中,则会发生冲突。对于您的第一个问题,请查看此小提琴。此小提琴不起作用,因为它没有更改表单所依赖的单选按钮。
$(".albumcover-item").click(function(e){
    ...
    $('.edit_album').trigger('submit.rails');
    ...
});