Okk*_*kky 2 html jquery tabs jquery-ui jquery-ui-tabs
我正在研究JQuery UI选项卡.我希望在表单提交后关闭动态生成的选项卡.
这是我的代码:
function submit_form(){
alert(JSON.stringify($('form').serializeObject()));
$('#result').text(JSON.stringify($('form').serializeObject()));
var tabs = $("#container-1").tabs();
tabs.tabs('remove', 1);
}
$(document).ready(function(){
var tabs = $("#container-1").tabs();
$('#add_tab').click( function(){
var ul = tabs.find( "ul" );
$( "<li><a href='#newtab'>New Tab</a></li>" ).appendTo( ul );
$( "<div id='newtab'><form action='' method='post'>Name :<input type='text' name='name'></input></br>Email :<input type='text' name='email'></input></br>Phone Number :<input type='text' name='phone'></input></br><input type='button' value='Submit' id='form_button' onclick='submit_form()'></input></form></div>" ).appendTo( tabs );
tabs.tabs( "refresh" );
tabs.tabs( "option", "active", -1 );
});
});
Run Code Online (Sandbox Code Playgroud)
我的HTML页面:
<body>
<div id="container-1">
<ul>
<li><a href="#fragment-1">List</a></li>
</ul>
<div id="fragment-1">
<table id="contact">
<tr>
<th> Name </th>
<th>E-mail </th>
<th> Phone </th>
</tr>
</table>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
添加标签
我要关闭的选项卡是由该函数动态创建的on-click of add_tab.我想在功能结束时关闭它submit_form().
应该已经删除了代码
tabs.tabs('remove', 1);
Run Code Online (Sandbox Code Playgroud)
但是我收到了一个错误
Error: no such method 'remove' for tabs widget instance
http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js
Line 2
Run Code Online (Sandbox Code Playgroud)
怎么办我修好了?
问题是在新的jquery Ui中删除函数已被弃用使用刷新方法.
旧API:
$( "#tabs" ).tabs( "remove", 2 );
Run Code Online (Sandbox Code Playgroud)
新API:
// Remove the tab
var tab = $( "#tabs" ).find( ".ui-tabs-nav li:eq(2)" ).remove();
// Refresh the tabs widget
$( "tabs" ).tabs( "refresh" );
Run Code Online (Sandbox Code Playgroud)
请记住修复您的问题.