使用 jQuery 选择 php 包含的 html 元素
Posted
技术标签:
【中文标题】使用 jQuery 选择 php 包含的 html 元素【英文标题】:Select php included html element with jQuery 【发布时间】:2021-03-02 22:56:02 【问题描述】:我想用 jQuery 选择一个包含的 html 元素。我怎样才能做到这一点?
index.php
<?php
<html>
<head>
...
</head>
<body>
include('file.php');
</body>
<html>
?>
文件.php
<?php
echo '<div class="test">test</div>';
?>
select.js
let a = $('.test');
console.log(a); // returns undefined
【问题讨论】:
确保 js 代码在 html 元素出现在 DOM 或document.ready
事件后运行。
在DOM结构中test是否显示?
@sergeykuznetsov 是的,它在 DOM 结构中。
@u_mulder 我已经尝试过使用 document.ready 但它不起作用:/
<?php <html> ...
Umm.... 尝试将 <?php
放在 PHP 调用之前,并在再次启动 HTML 之前结束它。即<?php include('file.php'); ?>
。代码甚至不应该像现在这样执行。
【参考方案1】:
尝试在页面完全加载后执行您的脚本。
$(window).on("load", function()
let test = $('.test');
console.log(test);
);
【讨论】:
【参考方案2】:代码应按如下方式组织:<?php Php.Code.Goes.Here ?>
。这可以被 HTML 包围,例如,<b><?php print("HELLO!"); ?></b>
。这将显示:HELLO!
所以...你看到问题了,用...
<?php
<html>
<head>
...
</head>
<body>
include('file.php');
</body>
<html>
?>
HTML 是 IN PHP。你想要这个:
<html>
<head>
...
</head>
<body>
<?php include('file.php'); ?>
</body>
<html>
当然,这段代码根本不应该执行,因为<?php <html>
不是真正有效的 PHP 语法。
【讨论】:
以上是关于使用 jQuery 选择 php 包含的 html 元素的主要内容,如果未能解决你的问题,请参考以下文章
使用jQuery $ .ajax方法显示包含MySQL表数据的JSON [关闭]