为何我用 js 调用 PHP 某个函数的返回值在 HTML 上显示老是出错?

2020 年 2 月 10 日
 CR7sun

PHP 代码:

<?php
function form_getresultnum($formid) {
    $count = DB::result_first("SELECT count FROM ".DB::table('form_item_count')." WHERE formid='$formid'");
    return $count;
}
echo form_getresultnum(2);
?>

html 代码:

<p id="p1"></p>

window.onload = function s(){$("#p1").load("/i/template/form/source/function/function_form.php");}

为什么老是显示 Uncaught TypeError: Cannot read property 'load' of null at s ? 怎么都获取不到这个值呢?有没有大佬指导一下啊。

4440 次点击
所在节点    JavaScript
24 条回复
stabc
2020 年 2 月 10 日
jquery 载入了么
jugelizi
2020 年 2 月 10 日
看下 jquery 如何引入使用的文档 A
CR7sun
2020 年 2 月 10 日
@stabc 载入了
CR7sun
2020 年 2 月 10 日
@jugelizi 我引入 jquery 了还是不行啊
exploreXin
2020 年 2 月 10 日
后端用的什么框架,打印下 $count 的值,看看变量类型是什么。
anteros
2020 年 2 月 10 日
这个不关 php 的事哈
jugelizi
2020 年 2 月 10 日
@CR7sun

为啥就不喜欢看文档 很清楚的

$(document).ready(function(){
//$("p").click(function(){
// $(this).hide();
// });
});
eason1874
2020 年 2 月 10 日
学会并保持阅读报错信息的能力。
Uncaught TypeError: Cannot read property 'load' of null at s
这话意思是在 s 找不到 load 属性
因为 window.onload = function s() 多了个 s,直接 function () 就对了
但一般不这样赋值,这样只能赋值一次,容易覆盖其他的,也容易被其他的赋值。

既然用了 jQuery 那就像楼上那样 $(document).ready(function(){})
没 jQuery 就用 window.addEventListener('load', function(){})
eason1874
2020 年 2 月 10 日
@eason1874 #8 想了想。不对,说错了,应该是 $("#p1") 的 load 找不到,不关那个函数名的事。
troycode
2020 年 2 月 10 日
$(document).ready(function(){})
justfindu
2020 年 2 月 10 日
你没有 $("#p") 这是一个 null, 而且这个你需要使用 $("#p")[0]
ysc3839
2020 年 2 月 10 日
在 js 的 $("#p1") 前面加个 debugger; 然后打开开发者工具刷新页面,中断后控制台看看 p1 元素是否存在。
Kokororin
2020 年 2 月 10 日
应该是 jQuery 没有载入成功,此时的$=document.querySelector,jQuery 的$()永远不会返回 null,所以楼上有些说法是不正确的=w=
xxbutoo
2020 年 2 月 10 日
为何 phper 总是提问这种问题 ??
masker
2020 年 2 月 10 日
@xxbutoo 为什么总有人以为自己很优越很屌?
xxbutoo
2020 年 2 月 10 日
@masker 为什么总有人喜欢盲人摸象?
jinliming2
2020 年 2 月 10 日
js 代码要放在 <p id="p1"></p> 的后面
jinliming2
2020 年 2 月 10 日
@Kokororin jQuery 没载入的话,$ 是 undefined 哦!
$=document.querySelector 只是 DevTools 下的一个“语法糖”,即便是在 DevTools 里 createElement 创建的 script 标签也会继承这个语法糖。
但是如果是网页中本身就有的 script 标签,默认是没有 $ 定义的!
xy90321
2020 年 2 月 10 日
$ 别名被覆盖
t2doo
2020 年 2 月 10 日
php 代码是 Discuz 的写法吗

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/643445

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX