根据上一个选项卡的选择器重新加载选项卡
reload a tab based on selector of previous tab
我不确定如何根据上一个选项卡中的选择器重新加载选项卡时遇到问题。
我的选项卡代码在这里:
<ul class="nav nav-tabs">
<li class="active">
<a href="#addpropertypanel1" data-toggle="tab">
<s1>
<?php echo Jtext::_( 'ADDRESS');?>
</s1>
</a>
</li>
<li>
<a href="#addpropertypanel2" data-toggle="tab">
<s1>
<?php echo Jtext::_( 'GENERAL_INFORMATION');?>
</s1>
</a>
</li>
<li>
<a href="#addpropertypanel3" data-toggle="tab">
<s1>
<?php echo Jtext::_( 'OTHER_INFORMATION');?>
</s1>
</a>
</li>
<li>
<a href="#addpropertypanel4" data-toggle="tab">
<s1>
<?php echo Jtext::_( 'PHOTOS');?>
</s1>
</a>
</li>
</ul>
在我的"常规信息"选项卡中,有一个类别选择器来选择一个值。选择的此值将影响"其他信息"选项卡中的内容。
我想知道如何仅使用基于"一般信息"中选择的信息重新加载"其他信息"选项卡。
我是一个非常缺乏经验的程序员,非常感谢任何帮助。
问候
JavaScript
您可以使用JavaScript(jQuery)根据链接的内容来操作链接。
请参阅此示例: JsFiddle
var myValue = '';
switch( $('a[href=#addpropertypanel2]').text() ) {
// put here your all cases that Jtext::_( 'GENERAL_INFORMATION') can offer
case "abc":
myValue = "new value 1";
break;
case "def":
myValue = "new value 2";
break;
case "GENERAL_INFORMATION": // just for example manipulation
myValue = "new value 3";
break;
}
$('a[href=#addpropertypanel3]').text( myValue );
.PHP
您还可以使用 PHP 进行操作,方法是在将 Jtext::_( 'GENERAL_INFORMATION')
插入链接之前切换的输出。因此,在开关后插入所需的值,而不是Jtext::_( 'OTHER_INFORMATION')
您需要绑定 AJAX 事件以从 PHP 加载所需的信息并将其注入到选项卡中。
一个循序渐进的教程:
-
数据源:在PHP中,您必须编写一些代码,在调用新URL(例如
http://www.your_domain.com/get_info
)时回显所需的数据,具体取决于POST或GET参数。对于此示例,我想使用 GET 参数,这将导致http://www.your_domain.com/get_info?address_id=1
(1
只是一个示例 id 值) -
容器:然后在 HTML 中将容器添加到数据的选项卡中。它需要一个 id,所以你可以用 JavaScript 使用它。类似
<li><a href="#addpropertypanel2" data-toggle="tab"><s1><div id="general_information"></div></s1></a></li>
-
事件:现在你有一个数据源(新的URL)和一个目标(HTML选项卡中的容器),你需要做的就是使用一些JavaScript将数据从源添加到目标中。但是在将事件绑定到
<select>
之前,您应该给它一个 id,以简化绑定(类似于<select id="addresses_select">
)。我强烈建议使用 jQuery 进行绑定,因为它对新开发人员来说很容易,而且它适用于所有浏览器。(要将jQuery添加到您的页面,只需将以下代码片段添加到HTML的<head>
中:<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" type="text/javascript"></script>
)。使用 jQuery 时,您可以使用以下代码片段来检索所需的数据并将其注入 HTML 容器中。
jQuery 事件代码段:
$('#addresses_select').change(function(){
var selected_address_id = this.value;
$.ajax({
url: "/get_info?address_id=" + selected_address_id,
success: function(desired_data_from_php) {
$("#general_information").html("<p>" + desired_data_from_php + "</p>");
}
});
});
这应该就是全部了。
祝你好运:-)
PS:在下面的小提琴中,您可以看到<select>
事件的工作原理:http://jsfiddle.net/LyLHL/
- 数据表 AJAX 筛选器重新加载数据
- 我们是否有任何通用脚本/ jquery插件可以在通过ajax选项卡加载的内容上应用javascript
- jquery选项卡加载Ajax内容
- 如何在新加载的页面上执行(下拉)操作
- 根据上一个选项卡的选择器重新加载选项卡
- 有没有办法重定向使用 JQuery UI 选项卡加载的内容
- 获得“中止,因为不接受 0”并使用反应热加载器重新加载整页
- 在剑道UI中动态设置当前选项卡加载
- 咕噜咕噜的手表:实时加载重新加载落后 1 步....
- 从选项卡加载事件 MDN 获取原始目标
- 当选项卡加载火狐插件SDK时返回函数
- 如何检查选项卡加载失败
- JavaScript 在不同的选择选项上加载不同的函数
- 引导远程选项卡 - 加载第一个选项卡
- 如何为新加载的元素提供JQuery UI工具提示
- 如何在新加载的页面上使用相同的JavaScript代码(通过重定向)
- 使用PHP或Javascript检测页面刷新或新加载
- MDL选项卡加载问题
- 如何禁用和启用选项卡加载使用功能
- 列出并调用firefox扩展中新加载的选项卡中的js函数