1

我有一个注册表单,其中有一个隐藏的输入框,除非单击链接。这是代码:

<a id="showCoupon" href="javascript:void(0);" onclick="toggleCoupon();">
     <?php _e('Have a coupon?','mysite'); ?>
</a>

如果设置了优惠券 GET 变量,我希望输入框可见并预填充提供的数据。我添加了 PHP 来检查是否存在这样的 GET 变量:

if(isset($_GET['coupon'])) {
    $coupon = $_GET['coupon'];
}
?>

此外,输入框已修改为使用 的值($coupon如果已设置)。现在,我不知道如何触发 JS 事件toggleCoupon();

我修改 PHP 函数以单击如下链接:

if ( isset($_GET['coupon']) ) {
   $coupon = $_GET['coupon'];
   echo "<script>$('#showCoupon').trigger('click');</script>";
}
?>

到目前为止,它不起作用。我究竟做错了什么?

4

2 回答 2

4

你有没有尝试过:

<script>
$(document).ready(function(){
$('#showCoupon').trigger('click');
});

</script>

当文档加载时,jQuery 会触发 id 为的元素的点击事件showCoupon

于 2013-03-23T18:33:30.367 回答
0

不要使用这样的杂物。那是糟糕的。

相反,在服务器端,如果提供了 URL 参数,则不要输出首先隐藏元素的代码段(CSS 类,“display:none;”,诸如此类)。

如果元素被 JavaScript 隐藏,则向它传递一个值,指示初始状态应该是可见的。

于 2013-03-23T18:47:32.070 回答