这是我使用优惠券输入的html部分
如果需要更多代码我会提供
Enter Coupon Code
<input type="text" class="form" name="couponadd" id="couponadd" placeholder="Enter Your Coupon Code" oninput="myFunction()" style="width: -moz-available;" />
Oninput我在脚本中获得优惠券代码
<script>
function myFunction() {
var getcoupon = document.getElementById("couponadd").value;
var aftercoupn=0;
如果优惠券代码为黄金,则总数少于15
if(getcoupon == 'gold')
{
var aftercoupn = 15;
document.getElementById("aftercoupan").innerHTML = '- $' + aftercoupn;
alert('minus 15 dollers');
}
如果优惠券代码为银色,则总数少于10
else if(getcoupon == 'silver')
{
var aftercoupn = 10;
document.getElementById("aftercoupan").innerHTML = '- $' + aftercoupn;
alert('minus 10 dollers');
}
else
{
}
}
</script>
我从php代码循环中获得价格
echo "<ul id='sub'>";
if($Seats == null){
echo '<li class="BlankSeat" ></li>';
}
elseif($ticketType=='PINK' && $ticketType == $_GET['type']){
echo '<li class="pink" id="pink" data-price="100" title="Row'.$Seats.'" name="'.$RowName.'" value="'.$Seats.'"></li>';
}
else{
echo '<li class="orange" id="orange" data-price="200" title="Row'.$Seats.'" name="'.$RowName.'" value="'.$Seats.'"></li>';
}
}
echo "</ul>";
点击li
获取价格的脚本代码var total =0;
var counter = 0;
var price=0;
$('li').click(function(e) {
var price = $(this).attr('data-price');
if click something
{
counter++;
}else
{
counter --;
}
我如何在此处使用优惠券代码值
var total = parseFloat(price * counter);
document.getElementById('demoPrice').innerHTML = '$' + total;
}
});
答案 0 :(得分:1)
在文字输入上更新aftercoupn
变量,然后在点击次数上使用它
var total = 0;
var counter = 0;
var price = 0;
var aftercoupn = 0;
$('li').click(function(e) {
$('li').removeClass('active');
$(this).addClass('active');
var price = $(this).attr('data-price');
if (price) { // I'm not sure with the counter variable here
counter++;
} else {
counter--;
}
var total = parseFloat(price * counter);
$('#demoPrice').text('$' + (total-parseInt(aftercoupn)));
});
function myFunction() {
var getcoupon = $("#couponadd").val(),
txt='Invaild Coupon';
if (getcoupon == 'gold') {
aftercoupn = 15;
txt = '- $' + aftercoupn;
console.log('minus 15 dollers');
counter=0;
} else if (getcoupon == 'silver') {
aftercoupn = 10;
txt = '- $' + aftercoupn;
console.log('minus 10 dollers');
counter=0;
}
$('li.active').length && $('li.active').trigger('click');
$("#aftercoupan").text(txt);
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" class="form" name="couponadd" id="couponadd" placeholder="Enter Your Coupon Code" oninput="myFunction()" style="width: -moz-available;" />
<div id="aftercoupan"></div>
<ul id='sub'>
<li class="BlankSeat" data-price="0">Blank</li>
<li class="pink" id="pink" data-price="100" title="Row10" name="pink" value="10">Pink</li>
<li class="orange" id="orange" data-price="200" title="Row20" name="orange" value="20">Orange</li>
</ul>
<div id="demoPrice"></div>
&#13;
答案 1 :(得分:0)
我假设您将价格用作全局变量。然后点击li
您应该更新该变量。因此,您可以从其他地方点击li点击价格(我认为这是您正在尝试实现的目标)。
var total = 0, price, counter = 0;
$('li').click(function(e) {
price = parseFloat($(this).attr('data-price'));
// Do your other stuffs if you want
});
然后在其他地方,您可以在li
点击后获得此价格。
total = price * counter;
document.getElementById('demoPrice').innerHTML = '$' + total;
整个事情是根据您的需要编写的。如果我认为错误或误解了某处,请纠正我