Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从js var分配动态div id_Javascript_Jquery - Fatal编程技术网

Javascript 从js var分配动态div id

Javascript 从js var分配动态div id,javascript,jquery,Javascript,Jquery,将id分配给Javascript变量后,使用jQuery选择div时遇到问题: $(function() { $(".do").live("click",function() { var id = $(this).attr("id"); $.ajax({ //reload div using js var id $('id').fadeOut('fast').load('http://ex

将id分配给Javascript变量后,使用jQuery选择div时遇到问题:

$(function() {
    $(".do").live("click",function() 
        {

        var id = $(this).attr("id");

        $.ajax({
           //reload div using js var id 
           $('id').fadeOut('fast').load('http://example.com/get.php').fadeIn("slow");

            });

        return false;
            });
});
当我调用静态div时,它的工作原理如下:

$('#staticdiv').fadeOut('fast').load('http://example.com/get.php').fadeIn("slow");
如何从包含其id的Javascript变量中选择div

*编辑 以下是一个示例,如果div: 按钮以接合重新加载

<a href="" class="do" id="12">click to reload</a>
要重新加载的DIV:

<div id="12">to be refreshed</div>

请记住12 us动态,可以是任何变量。

您可以使用以下方法:

$("#"+id).fadeOut() // ...
但是,我不建议这样做,因为它在没有ID的情况下无法工作;请尝试此方法,该方法适用于没有ID的情况:

$(".do").live("click", function() {
    var me = $(this);
    $.ajax({
        // ...
        success: function(data) {
            me.fadeOut('fast').load('http://example.com/get.php').fadeIn("slow");
        }
        // ...
    });
    return false;
});
另外,我不确定你是否真的想要它;加载将不会等待淡出完成,虽然淡出将等待淡出完成,但淡出将不会等待加载完成。如果您对此有问题,请尝试以下方法:

me.fadeOut('fast', function() {
    me.load('http://www.example.com/get.php', function() {
        me.fadeIn('slow');
    });
});

您可以使用以下方法执行此操作:

$("#"+id).fadeOut() // ...
但是,我不建议这样做,因为它在没有ID的情况下无法工作;请尝试此方法,该方法适用于没有ID的情况:

$(".do").live("click", function() {
    var me = $(this);
    $.ajax({
        // ...
        success: function(data) {
            me.fadeOut('fast').load('http://example.com/get.php').fadeIn("slow");
        }
        // ...
    });
    return false;
});
另外,我不确定你是否真的想要它;加载将不会等待淡出完成,虽然淡出将等待淡出完成,但淡出将不会等待加载完成。如果您对此有问题,请尝试以下方法:

me.fadeOut('fast', function() {
    me.load('http://www.example.com/get.php', function() {
        me.fadeIn('slow');
    });
});

您不应该使用变量id而不是字符串“id”吗

详情如下:

$('#'+id).fadeOut('fast').load('http://example.com/get.php').fadeIn("slow");

您不应该使用变量id而不是字符串“id”吗

详情如下:

$('#'+id).fadeOut('fast').load('http://example.com/get.php').fadeIn("slow");

当我尝试$+id.fadeOut/。。。它刷新到发送do的父div中,而不是特定的div。另外,您给出的替代/更好的示例也会有相同的结果,加载$this;是否只需在单击按钮的div中重新加载,否?@cjaredrun:您要重新加载的div是否具有do类,还是具有do类的父级?如果父元素具有do类,则应将选择器从.do更改为.do>div.i,并使用我正在使用的div信息和激活.do的方式编辑文章。@cjaredrun:两个元素具有相同id是无效的。第一种情况下,jQuery可能会因此而卡住。第二种情况是显式选择按钮,在您的情况下没有歧义。在这种情况下,我将href元素从id切换到name?我尝试了,结果也是一样。当我尝试$+id.fadeOut/。。。它刷新到发送do的父div中,而不是特定的div。另外,您给出的替代/更好的示例也会有相同的结果,加载$this;是否只需在单击按钮的div中重新加载,否?@cjaredrun:您要重新加载的div是否具有do类,还是具有do类的父级?如果父元素具有do类,则应将选择器从.do更改为.do>div.i,并使用我正在使用的div信息和激活.do的方式编辑文章。@cjaredrun:两个元素具有相同id是无效的。第一种情况下,jQuery可能会因此而卡住。第二种情况是显式选择按钮,在您的情况下没有歧义。在这种情况下,我将href元素从id切换到name?我试过了,结果也一样。