0

我正在尝试让 jQuery 更改元素的 html 并包含 PHP。除了 PHP,一切都很好。这是我所拥有的:

$('.gridheader').each(function(index){
    $(this).toggle(function (){
        $('.gridimage:eq('+index+'), .gridinfo:eq('+index+')').slideToggle();
        $('.gridheadinfo:eq('+index+')').html('Click to close <img src="<?php echo base_url() ?>/assets/images/closetab.png" width="10" height="10" />');
    }, function(){
        $('.gridimage:eq('+index+'), .gridinfo:eq('+index+')').slideToggle();
        $('.gridheadinfo:eq('+index+')').html('Click for info <img src="<?php echo base_url() ?>/assets/images/scrollup.png" width="11" height="10" />');
    });
});

我有最初的图像(HTML):

<div class="float-left">Kredible</div><div class="float-right gridheadinfo">Click for info <img src="<?php echo base_url() ?>assets/images/scrollup.png" width="11" height="10" /></div></div>

HTML 工作正常,但是当我使用 jQuery 更改它时,图像不显示。更改后我在检查器中查看了它,PHP 显示为 PHP 而不是转换为 HTML?

我比较疑惑。

谢谢。

4

2 回答 2

2

保存您的服务器端变量,然后使用它:

      var url="<?php echo base_url() ?>"; 
    //this will be parsed by the php interpreter at page load so url will be "localhost/subdomain/" probably. 

        $('.gridheader').each(function(index){
            $(this).toggle(function (){
                $('.gridimage:eq('+index+'), .gridinfo:eq('+index+')').slideToggle();
                $('.gridheadinfo:eq('+index+')').html('Click to close <img src="'+url+'/assets/images/closetab.png" width="10" height="10" />');
    //use it here
            }, function(){
                $('.gridimage:eq('+index+'), .gridinfo:eq('+index+')').slideToggle();
                $('.gridheadinfo:eq('+index+')').html('Click for info <img src="'+url+'/assets/images/scrollup.png" width="11" height="10" />');
            });
        });
于 2012-08-19T23:40:23.247 回答
0

包含一个 php 文件只会影响服务器上的 html。

因此,更改的代码不会有任何影响,因为没有执行 php 脚本。

您可以加载 html 文件的内容,然后将其放入您的页面中。当然,SQL 不可能在其中实现。

于 2012-08-19T23:39:28.500 回答