我有一个带有优惠券文本字段的销售页面。对于我的影响者运动,我为每个新的影响者创建一个新的优惠券。
为了简化生活,我编写了一些JavaScript,用url参数mysite.com/mysalepage?coupon=NAME_OF_INFLUENCER中的促销代码来预填充销售页面的“优惠券”文本字段
但是,人们也可以在没有影响者的情况下到达此销售目标页面,然后键入在社交页面中某处找到的优惠券代码。
当访客在文本字段中输入优惠券代码时,它会隐藏价格和付款按钮,并显示新的价格和新的付款按钮。
这些显示/隐藏功能是由“ Keyup”触发的,当访问者键入促销代码时,它可以正常工作。
不幸的是,当它是我的javascript代码从我的url参数填充优惠券文本字段时,它不起作用。
因此,我尝试通过代码在页面上创建一些不同的事件并触发它,以显示/隐藏促销元素。我尝试了“滚动,聚焦,聚焦等” ...
当我要求这样做时,代码将重点放在元素上,但是它不会被显示/隐藏促销元素的代码触发。
这是我的代码:
< script type = "text/javascript"
language = "Javascript" >
// Function to hide/show the table based on the values of inputs
function toggleTable() {
$('#hideThis').toggle($('#coupon').val() !== 'JDCM' && $('#coupon').val() !== 'PROMOGH2019');
$('#hideThis3').toggle($('#coupon').val() !== 'JDCM' && $('#coupon').val() !== 'PROMOGH2019');
$('#showThis').toggle($('#coupon').val() == 'JDCM' || $('#coupon').val() == 'PROMOGH2019');
$('#showThis2').toggle($('#coupon').val() == 'JDCM' || $('#coupon').val() == 'PROMOGH2019');
$('#showThis3').toggle($('#coupon').val() == 'JDCM' || $('#coupon').val() == 'PROMOGH2019');
}
$(document).ready(function() {
// Bind the keyup event on both the inputs, call the function on event
$('#coupon').on('keyup', toggleTable).trigger('keyup');
$('#begin').on('scroll', toggleTable).trigger('scroll');
});
window.onload = function() {
function querySt(ji) {
hu = window.location.search.substring(1);
gy = hu.split("&");
for (i = 0; i < gy.length; i++) {
ft = gy[i].split("=");
if (ft[0] == ji) {
return ft[1];
}
}
}
var coupon = querySt("coupon");
if (coupon == null) {} else {
document.getElementById('coupon').value = coupon;
}
}
document.getElementById('coupon').focus();
document.getElementById('begin').focus(); <
/script>
<form>
<span>Vous avez un code PROMO?</span><input type="text" name="coupon" id="coupon" placeholder="Ex: PROMO2019">
</form>
在代码上,您可以看到我试图在滚动事件上显示/隐藏,但是没有用。
我想知道如何在我的文本字段优惠券上通过代码创建此事件“ keyup”。
相关分类