我在joomla中使用seblod扩展名添加了dropdownlist
。但是javascript不能用于此。
<html>
<head>
<script type="text/javascript">
alert('onload');
document.getElementById('countrynames').addEventListener('change',function(){
alert('Hello');
});
</script>
</head>
<body>
<select size="1" class="inputbox select " name="countrynames" id="countrynames">
<option selected="selected" value="">- Select an option -</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select>
</body>
</html>
答案 0 :(得分:3)
将您的脚本移动到页面底部 - 在您将侦听器绑定到DOM元素之后。
<select size="1" class="inputbox select " name="countrynames" id="countrynames">
<option selected="selected" value="">- Select an option -</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select>
JS:
<script type="text/javascript">
alert('onload');
document.getElementById('countrynames').addEventListener('change',function(){
alert('Hello');
});
</script>
答案 1 :(得分:0)
您的脚本在创建select元素之前正在执行。这是修复:
<html>
<head>
<script type="text/javascript">
window.onload = function(){
alert('onload');
document.getElementById('countrynames').addEventListener('change',function(){
alert('Hello');
});
}
</script>
</head>
<body>
<select size="1" class="inputbox select " name="countrynames" id="countrynames">
<option selected="selected" value="">- Select an option -</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select>
</body>
</html>
答案 2 :(得分:0)
您可以尝试将代码放入将由<body>
代码的onload
方法调用的函数中:
您的JS脚本:
<head>
<script type="text/javascript">
function mload() {
alert('onload');
document.getElementById('countrynames').addEventListener('change',function() {alert('Hello');
});
}
</script>
</head>
在<body>
添加:
<body onload="javascript: mload()">
希望这会有所帮助。如果这对您有用,请告诉我。