Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
返回的JavaScript值不会在div元素中呈现_Javascript_Html - Fatal编程技术网

返回的JavaScript值不会在div元素中呈现

返回的JavaScript值不会在div元素中呈现,javascript,html,Javascript,Html,这是一个基本问题(再次发布,因为在我更新后它没有重新打开)。但我在这上面找不到任何复制品 这是一个脚本,我打算在我的项目中使用不同的页面。其目的是将span元素中显示的默认ID覆盖为URL参数session\u order中的订单号。这不会影响任何事情,只会增强我的项目的用户体验 scripts.js(加载到标题中): 函数get\u url\u参数(url,参数){ var url=新的url(url); 返回url.searchParams.get(参数); } 在我的HTML模板中,我这

这是一个基本问题(再次发布,因为在我更新后它没有重新打开)。但我在这上面找不到任何复制品

这是一个脚本,我打算在我的项目中使用不同的页面。其目的是将
span
元素中显示的默认ID覆盖为URL参数
session\u order
中的订单号。这不会影响任何事情,只会增强我的项目的用户体验

scripts.js(加载到标题中):

函数get\u url\u参数(url,参数){ var url=新的url(url); 返回url.searchParams.get(参数); } 在我的HTML模板中,我这样调用函数,

24
也尝试过这个,

document.write(获取url参数(window.location.href,'session\u order');
呈现页面时,不会发生任何更改。对于第一种情况,控制台中也没有错误或警告

对于第二种情况,控制台记录了一个错误
uncaughtreferenceerror:get\u url\u参数未定义
,尽管
script.js
div
元素之前加载(没有任何错误)

通常,我会使用Flask在服务器端执行此操作,但我正在尝试JavaScript(我对JavaScript不熟悉),因为它只是一个UX增强

我缺少什么?

试试这个:

//由于无法在stackoverflow编辑器中测试,因此对此进行了注释
//const url=window.location.href;
常量url=https://example.com?session_order=13';
函数get_url_参数(url,参数){
const u=新的URL(URL);
返回u.searchParams.get(参数);
}
window.onload=函数(){
const el=document.getElementById('sessionOrder');
const val=get_url_参数(url,‘会话顺序’);
if(val){
el.innerHTML=val;
}
}

24
给你。尝试使用
文档远离内联脚本。编写

函数get\u url\u参数(url,参数){ var url=新的url(url); 返回url.searchParams.get(参数); } addEventListener('load',function()){ 常量url=https://yourpagesdomain.name/?session_order=hello“;//window.location.href; const sessionOrder=get_url_参数(url,‘会话顺序’); document.getElementById('sessionOrder')。innerText=sessionOrder; });
标记和脚本的顺序很重要


函数get_url_参数(url,参数){
var url=新的url(url);
返回url.searchParams.get(参数);
}
document.querySelector('div')。innerHTML=get\u url\u参数('div')https://example.com?session_order=2","会议顺序",;

由于HTML从上到下读取,如果在元素调用后声明了函数,它将找不到它。您可以将javascript包装在正文的末尾以找到它。@安德烈·席尔瓦,如果是这样的话,第一种情况也应该失败,对吗?我在控制台中没有看到类似的错误。我正在
中加载我的
脚本.js
,并调用
中的函数。谢谢。这是可行的,但我想了解为什么
24
不起作用。基本上,你不能。只有少数元素支持
onload
事件,而
不是其中之一。非常感谢。这澄清了我的问题,我明白。但是在我的例子中,我的
script.js
是在
中加载的,而函数是在
中调用的。我正在试图理解为什么
这个.innerHTML
也不起作用。谢谢。这很有效。我仍然想理解为什么
24
不起作用。因为
div
元素没有
onload
事件。