在JQuery更新期间刷新div

时间:2017-06-20 08:37:10

标签: javascript jquery html css ajax

我有一个包含很多div的html文件。除此之外,我还有一个JQuery文件,它每30秒运行一次AJAX请求。在我的JQuery如果条件满足并且jQuery重新下载3次我想更新我的div-s。我试图添加一个div,但是当我重新加载整个页面时它不会出现。如果我设置删除我的div并且不添加,则JQuery删除我的div,所以对我来说这很奇怪,因为只有.add或.append或.html不起作用。此外,我也设置了一个具有隐身性的类,并且我还设置了当条件满足jQuery文件时删除不可见性类,但div不想出现。我正在尝试创建示例代码。

我的HTML

<div  class="row">
      <div  id="myclass" class= "invisible" >
           <div <p> Please appear for me!<p></div>
      </div>  
</div>

我的JQuery:

if (condition) {
    $('#myclass').removeClass('invisible');

    if (n >= 2) {
        $('#myclass').addClass('invisible');
    }
}   

重点是,如果满足条件,那么当我重新加载页面时,类不会被删除。在jQuery文件中,n等于AJAX重新加载setInterval的时间。我的问题是为什么我的div不会出现在我重新加载整个页面的时候?也为什么删除没有重新加载?

提前感谢您的答案!

1 个答案:

答案 0 :(得分:0)

removeClass addClass 完美无缺。首先,你可以检查jQuery是否有效,只是尝试直接写你的脚本(&#34; .append&#34;,&#34; .html&#34;,&#34; .insertAfter&#34;)在浏览器控制台中,当您更改隐身时,可以在代码中添加一些console.log:

/**
 * Where to redirect users after login.
 *
 * @var string
 */
protected $redirectTo = '/admin/home';

/**
 * Create a new controller instance.
 *
 * @return void
 */
public function __construct()
{
    $this->middleware('guest.admin', ['except' => 'logout']);
}

public function showLoginForm()
{
    return view('admin.auth.login');
}

/**
 * Get the guard to be used during authentication.
 *
 * @return \Illuminate\Contracts\Auth\StatefulGuard
 */
protected function guard()
{
    return Auth::guard('admins');
}

更新一些div内容,可以使用简单的功能。喜欢 -  在获取请求中调用自己的页面,并替换div内容。

console.log('removeClass');
$('#myclass').removeClass('invisible');
if (n >= 2) {
    console.log('addClass');
    $('#myclass').addClass('invisible');
}

如果你更多_不使用你的间隔,那么清除它是一种很好的做法。

function reloadMyDiv(selector){
    var element = $(selector);
    if(element.length===1){
        $.get(window.location.href,{},function(response){
            var new_page = $('<div></div>').append(response);
            var new_element = new_page.find(selector);
            if(new_element.length===1){
                element.html( new_element.html() );
                console.log('update');
            }else{
                console.log('need contains only one element, '+new_element.length+' found!');
            }
        });
    }else{
        console.log('need contains only one element, '+element.length+' found!')
    }
};