在 jquery 中使用 php 是否有效?

is it valid to use php inside jquery?

我想通过 PHP 更改 jquery 命令。

例如:

$envelope<?php echo'1'?>.toggleClass( 'card-out' );

这个有效吗?我试过了,我认为它没有用,但我不知道错误是在那一行还是代码的其余部分。

这是我的代码的主要部分:

<div class="library-card envelope<?php echo'2'?>">
    <div class="front">
        <p class="stamp">Jacob Haase<br> 18.05.2000</p>
    </div>
    <div class="card">sdsdsd</div>
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
    <script type="text/javascript">
        var $envelope = $( '.library-card.envelope' ),
            $card = $envelope.find( '.card' ),
            $front = $envelope.find( '.front' );

        $front.on( 'click', function( event ) {
            $envelope<?php echo'2'?>.toggleClass( 'card-out' );
        });

        $card.on( 'click', function( event ) {
            $envelope<?php echo'2'?>.toggleClass( 'card-out' );
        });
    </script>

</div>

谢谢!

如果您在 .php 文件中使用 jQuery,则完全有效。

在这一行中:

$envelope<?php echo'1'?>.toggleClass( 'card-out' );

这将是 $envelope1.toggleClass('card-out');,但我不确定您是否有 $envelope1 jQuery 变量。但可能是,您正在尝试这样做:

$('.envelope1').toggleClass('card-out');

如果是,请使用:

$(".envelope"+<?php echo'1';?>).toggleClass( 'card-out' );

If you are trying to bound some PHP code with the click event then this is impossible in the way you are trying and PHP code will be executed as soon as page load without waiting for a click event.

If you are trying to generate final javascript or jquery code using PHP then this is okay.

了解更多信息Is it okay to use PHP inside a jQuery script?

针对你的问题使用这样

$(".envelope"+<?php echo'1';?>).toggleClass( 'card-out' );

学习用http://wptricks.co.uk/include-php-variables-into-jquery/