问问题
808 次
2 回答
0
您需要拦截 selectedIndex (或值)并在您自己的代码中调用您的函数:
function arteAluno (sel) {
var url = sel[sel.selectedIndex].value;
if(url=='loadImage();') {
loadImage();
return;
}
window.location = url;
}
于 2012-11-05T19:33:30.097 回答
0
由于您已经在使用 jQuery,因此您不妨将它用于这里的所有内容。您只需要绑定一个.change()
处理程序,该处理程序设置window.location
是否选择其中一个 URL,loadImage()
否则执行该函数。
loadImage()
我没有在值中调用函数名<option>
(看起来很奇怪),而是在下面用一个特殊的值替换了它value='load_image'
。处理程序将查找该.change()
值并在找到时执行该函数。
<select id="alunos">
<option selected="selected"></option>
<!-- Special value rather than function name here -->
<option value="load_image">Aluno 1</option>
<!-- URL values -->
<option value="../Index.html">Aluno 2</option>
<option value="../Index.html">Aluno 3</option>
</select>
和 jQuery:
$(document).ready(function() {
// Bind the onchange event for select#alunos
$('#alunos').change(function() {
// If the load_image option was selected, call the loadImage() function
if ($(this).val() == 'load_image') {
loadImage();
}
// Otherwise, load the URL
else {
// Unless the blank option is selected...
if ($(this).val() !== '') {
window.location = $(this).val();
}
}
});
});
// Can replace with all jQuery (since you are using it anyway)
function loadImage(){
$('#arte').css('backgroundImage', 'url(aikido.jpg)');
$('#arte').css('width', '200px');
$('#arte').css('height', '160px');
}
于 2012-11-05T19:35:01.783 回答