2014-09-04 62 views
0

我想知道如何删除按钮单击上的div id并将其添加到另一个按钮上,以便关联CSS加载。页面应该异步刷新以显示更改。 到目前为止,我已经能够通过点击按钮来删除id。更改/删除div ID和刷新页面async

$("#Remove").on('click', function() { 
 
    $("#slides").removeAttr("id"); 
 
}); 
 
$('#Add').on('click', function() { 
 
    $("#main-wrapper > div").attr("id", "slides"); 
 
}); 
 

 
var pathname = window.location.host; 
 

 
$("#Remove").click(function() { 
 
    $("#main-wrapper").load(pathname); 
 
}); 
 
//add code to refresh main-wrapper on any button click
#slides h1 { 
 
    color: black; 
 
    background: grey; 
 
    float: none; 
 
} 
 
h1 { 
 
    background: green; 
 
    color: white; 
 
    width: 20vw; 
 
    float: left; 
 
    padding: 10px; 
 
    margin: 2px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<button id="Remove">Remove id</button> 
 
<button id="Add">Add id</button> 
 
<div id="main-wrapper"> 
 
    <div id="slides"> 
 
    <div class="slides-container"> 
 
     <h1>This is a sample text</h1> 
 
     <h1>You are awesome</h1> 
 
     <h1>This is another line</h1> 
 
    </div> 
 
    </div> 
 
</div>

+0

向我们展示你 – VPK 2014-09-04 14:34:01

+0

http://codepen.io/shaneapen/pen/CdDku – 2014-09-04 14:34:29

+1

试图代码老实说哥们这似乎有点像一个奇怪的方式去绕过它。通常'类'是用于这种事情,而不是ID的,所以我会建议看看'addClass'和'removeClass',但这里是添加和删除ID然后依赖于类的ID之一! http://codepen.io/anon/pen/ekJmD – 2014-09-04 14:38:28

回答

3
$(document).ready(function(){ 
    $("#Remove").on('click', function(){ 
    $("#slides").removeAttr("id"); 
    }); 
    $('#Add').on('click', function(){ 
    $("#main-wrapper > div").attr("id", "slides"); 
    }); 
}); 
+0

酷!这工作得很好!但如何调用页面刷新的Ajax?在我的网站上显示更改不是必需的吗? – 2014-09-04 14:40:48

+1

不,CSS更改是即时的。只要你没有在另一个完整的样式表中加载,据我所知。尽管如此,它可能是。但你几乎应该始终在一个样式表中包含所有样式,除非你的网站/应用程序很大。 Rob是对的,你应该真的用这个类。提示:永远不要在CSS中使用ID,只能使用类:) – evu 2014-09-04 14:45:07

+0

并且添加更多内容,您不使用ajax刷新页面,而是使用ajax加载外部内容。 – evu 2014-09-04 14:46:15