【发布时间】:2024-01-17 05:00:01
【问题描述】:
我有两个标签,一个显示一个位置的一些酒店名称,另一个标签显示另一个位置的一些酒店。
当我从一个选项卡中选择一家酒店,然后从另一个选项卡中选择另一家酒店时。总数应该是hotel_location1 + hotel_location2。
这是我的代码:
标签:
<div class="tabs-x tabs-left">
<ul id="myTab-kv-13" class="nav nav-tabs" role="tablist">
<li class="active"><a href="#hotel-pb" role="tab" data-toggle="tab"><i class="fa fa-bed"></i> Port Blair</a></li>
<li><a href="#hotel-hl" role="tab-kv" data-toggle="tab"><i class="fa fa-bed"></i> Havelock</a></li>
</ul>
<div id="myTabContent-kv-13" class="tab-content">
<div class="tab-pane fade in active" id="hotel-pb">
<div class="col-md-3 col-xs-6">
<div class="panel panel-red">
<div class="panel-heading">velocity</div>
<div class="panel-body">
<img src="images/hotels/velocity.png" class="img-responsive"/>
<div class="my-caption">
<span class="glyphicon glyphicon-star"></span><span class="glyphicon glyphicon-star"></span><span class="glyphicon glyphicon-star"></span><span class="glyphicon glyphicon-star-empty"></span><span class="glyphicon glyphicon-star-empty"></span></div>
<select name="hotel_cat" id="hotel_cat_1" class="form-control" onchange="hotel_rate()">
<option value="">Category</option>
<option value="Standard Rs: 2000">Standard Rs: 2000</option>
<option value="Deluxe Rs: 2200">Deluxe Rs: 2200</option>
<option value="Family Rs: 3000">Family Rs: 3000</option>
</select>
<input type="hidden" name="sel_cat_1" id="sel_cat_1"/>
<br />
<button class="btn btn-block btn-danger" name="add_this_1" id="add_this_1" data-hname="velocity" data-elem="1" onclick="total_rate()">Select</button>
<input type="hidden" name="em_1" id="em_1" value="800"/>
<input type="hidden" name="s_tax_1" id="s_tax_1" value="8.4"/>
</div>
</div>
</div>
<div class="col-md-3 col-xs-6">
<div class="panel panel-red">
<div class="panel-heading">White Coral</div>
<div class="panel-body">
<img src="images/hotels/White Coral.png" class="img-responsive"/>
<div class="my-caption">
<span class="glyphicon glyphicon-star"></span><span class="glyphicon glyphicon-star"></span><span class="glyphicon glyphicon-star"></span><span class="glyphicon glyphicon-star-empty"></span><span class="glyphicon glyphicon-star-empty"></span></div>
<select name="hotel_cat" id="hotel_cat_2" class="form-control" onchange="hotel_rate()">
<option value="">Category</option>
<option value="Dlx Lake View Rs: 4500">Dlx Lake View Rs: 4500</option>
<option value="Dlx Mountain View Rs: 4000">Dlx Mountain View Rs: 4000</option>
<option value="Std Lake View Rs: 3500">Std Lake View Rs: 3500</option>
<option value="Std Mountain View Rs: 3000">Std Mountain View Rs: 3000</option>
</select>
<input type="hidden" name="sel_cat_2" id="sel_cat_2"/>
<br />
<button class="btn btn-block btn-danger" name="add_this_2" id="add_this_2" data-hname="White Coral" data-elem="2" onclick="total_rate()">Select</button>
<input type="hidden" name="em_2" id="em_2" value="800"/>
<input type="hidden" name="s_tax_2" id="s_tax_2" value="8.4"/>
</div>
</div>
</div>
<input type="hidden" name="count" id="count" value="3"/>
</div>
<div class="tab-pane fade" id="hotel-hl">
<div class="col-md-3 col-xs-6">
<div class="panel panel-red">
<div class="panel-heading">blue bird resort</div>
<div class="panel-body">
<img src="images/hotels/blue bird resort.png" class="img-responsive"/>
<div class="my-caption">
<span class="glyphicon glyphicon-star"></span><span class="glyphicon glyphicon-star"></span><span class="glyphicon glyphicon-star"></span><span class="glyphicon glyphicon-star-empty"></span><span class="glyphicon glyphicon-star-empty"></span></div>
<select name="hotel_cat" id="hotel_cat" class="form-control" onchange="hotel_rate()">
<option value="">Category</option>
<option value="Standard Rs: 2000">Standard Rs: 2000</option>
</select>
<input type="hidden" name="sel_cat_3" id="sel_cat_3"/>
<br />
<button class="btn btn-block btn-danger" name="add_this_3" id="add_this_3" data-hname="blue bird resort" data-elem="3" onclick="total_rate()">Select</button>
<input type="hidden" name="em_3" id="em_3" value="800"/>
<input type="hidden" name="s_tax_3" id="s_tax_3" value="8.4"/>
</div>
</div>
</div>
</div>
</div>
</div>
脚本:用于hotel_rate()
function hotel_rate(){ // just define the function.
jQuery(document).ready(function($){
var i=1;
var cnt = $("#count").val();
for(i=1;i<cnt;i++){
var cost_em = $("#em_"+i).val();
var cat = $("#hotel_cat_"+i).val();
var test = cat.split(':');
var cat_cost = parseInt(test[1]);
$("#sel_cat_"+i).val(cat_cost);
$('.btn-active').removeClass('btn-success btn-active').addClass('btn-danger').html('Select');
}
});
}
脚本:total_cost()
function total_rate(){
jQuery(document).ready(function($){
var button = $(event.target);
$('.btn').removeClass('btn-success btn-active').addClass('btn-danger').html('Select');
button.html('Selected');
button.removeClass("btn-danger");
button.addClass("btn-success btn-active");
var elem = button.data('elem');
var hname = button.data('hname');
var s_tax = $("#s_tax_"+elem).val();
var cost_em = $("#em_"+elem).val();
var cat_cost = $("#sel_cat_"+elem).val();
var rooms = $("#rooms").val();
var per = $('#persons').val();
var mattress = per - (rooms*2);
var cost_hotel = parseInt((cat_cost * rooms) + (cost_em * mattress));
var cost_hotel_final = parseInt(cost_hotel + (s_tax/100 * cost_hotel));
$("#tot_hotel_cost").val(cost_hotel_final);
$("#hotels").html(hname);
total();
});
}
脚本:添加所有数据的其余部分。
function total_transport(){
jQuery(document).ready(function($){
var trans_pb = $("#t_pb").val();
var trans_hl = $("#t_hl").val();
var trans_nl = $("#t_nl").val();
var total_transportation_cost = trans_pb + trans_hl + trans_nl;
$("#tot_transp").val(total_transportation_cost);
total();
});
}
function total(){
jQuery(document).ready(function($){
var tot_hotel_cost = $("#tot_hotel_cost").val();
var tot_transp = $("#tot_transp").val();
var total_final_cost = tot_transp + tot_hotel_cost;
$("#total_cost").html(total_final_cost);
});
}
我的错误是我无法根据不同的标签(即不同的位置)添加酒店价格。
我们将不胜感激任何类型的帮助。提前谢谢。
【问题讨论】:
-
您是否考虑将值存储在
localStorage或使用query Parameter将其传递到下一个选项卡? -
据我了解,tab 表示另一个 html 页面。对?如果是,当您完成计算并想要重新路由时,您可以尝试
localStorage.setItem(propertyName, value)并使用localStorage.getItem(propertyName)在下一页加载时检索它 -
实际上是标签而不是单个页面。它是一个页面,其中存在不同的选项卡。
标签: javascript jquery tabs