Web控制台命令不起作用

Web Console command not working

本文关键字:不起作用 命令 控制台 Web      更新时间:2023-09-26

我正在尝试使用web开发工具"web控制台"answers"Firebug"。我试图通过在网络控制台中输入脚本来模拟当我点击这个按钮时会发生什么,但它不起作用。有人能帮我弄清楚在Web控制台中输入什么吗?我向老板求助,但他说这是最后一根稻草!!请帮忙。

这是带按钮的代码。。。。

<div id="car_perf_internal" style="display: inline;">
  <span style="float:left;"> </span>
  <div class="select_box right nccDropToggleSection">
    <a id="Left" class="NCCPUSHBUTTON" href="javascript:;" onclick="iToggleDisplay(this, 'nccDropToggleSection', 'nccDropToggleContent', null, null, 2);">
  <span>
<input id="buttons_K_NC_TITLE" class="NCCPUSHBUTTON" type="button" value="Performance Documents" name="buttons_K_NC_TITLE">
</span>
</a>

我试着把这个输入到网络控制台,但上面写着"TypeError:a未定义"

iToggleDisplay('Left', 'nccDropToggleSection', 'nccDropToggleContent', null, null, 2);

Left不是dom元素,而是ID值。您需要将其转换为一个元素:

iToggleDisplay(document.getElementById('Left'), 'nccDropToggleSection', 'nccDropToggleContent', null, null, 2);

似乎需要将引用传递给元素,而不仅仅是id。

iToggleDisplay(document.getElementById('Left'), 'nccDropToggleSection', 'nccDropToggleContent', null, null, 2);

另一种选择是调用点击

var elem = document.getElementById("Left");
elem.onclick.apply(elem);

您必须传递实际的DOM节点,而不是id作为第一个参数

所以不是

iToggleDisplay('Left', 'nccDropToggleSection', 'nccDropToggleContent', null, null, 2);

应该是

iToggleDisplay(document.getElementById('Left'), 'nccDropToggleSection', 'nccDropToggleContent', null, null, 2);

因为this指的是节点本身

如果在event属性的html中放置一些代码,则this指向dom对象(在您的情况下指向id为Left的链接)。要获取此信息,您可以使用document.getElementById函数通过id获取:

iToggleDisplay(document.getElementById('Left'), 'nccDropToggleSection', 'nccDropToggleContent', null, null, 2);

但你可以模仿点击按钮的方式:

document.getElementById('Left').click();