将变量传递给外部 javascript 文件以通过 onClick 更改图像


Passing Variable To External Javascript File To Change Images Via onClick

我目前有大量图像,我想在将某些变量传递给外部JS文件后显示这些图像:

网页代码:

<li><a href="#" onClick="javascript: update_region('ne');">Northeast</a>
             <ul>
                <li><a id="t2m" href="#" onClick="javascript: update_variable('t2m');">2m Temperature</a></li>
                <li><a id="td2m" href="#" onClick="javascript: update_variable('td2m');">2m Dew Point Temp</a></li>
                <li><a id="dewdep" href="#" onClick="javascript: update_variable('dewdep');">2m Dew Point Depression</a></li>
                <li><a id="wetbulb" href="#" onClick="javascript: update_variable('wetbulb');">2m Wet Bulb Temp</a></li>
                <li><a id="rh" href="#" onClick="javascript: update_variable('rh');">2m Relative Humidity</a></li>
                <li><a id="wind" href="#" onClick="javascript: update_variable('wind');">10m Wind Speed</a></li>
                <li><a id="windgust" href="#" onClick="javascript: update_variable('windgust');">10m Wind Gust</a></li>
                <li><a id="apparent" href="#" onClick="javascript: update_variable('apparent');">2m Apparent Temp</a></li>
            </ul>
        </li>

Javascript 代码:

function update_region(input) {
window.region = input;
imageload(); };
function update_variable(input) {
window.variable = input;
imageload(); };
function imageload() {
document.imageplot.src=(/images/rtma2p5_'+region+'_'+variable+'.png'); };

我不确定这是否是从 JS 文件外部传递变量以定义图像 url 代码的有效方法,因为我似乎根本无法让它工作。

试试...

function imageload() {
  document.imageplot.src=("/images/rtma2p5_" + window.region + "_"+ window.variable + ".png");
};

您缺少引号,并且未正确引用在先前函数中创建的变量。 您可能还需要考虑一些默认值。