2012-03-27 128 views
0

我有一个简单的下拉列表,并希望得到一个选项的具体值,如果用户改变了下拉选择,而无需他推送一个提交按钮。这可能与jQuery的?获得价值立即jQuery的

这是我走到这一步:

<form action='select.htm'> 
    <select id='BezirksAuswahl'> 
    <option value='Alle'>Alle Eintr&auml;ge</option> 
    <option value='Charlottenburg-Wilmersdorf'>Charlottenburg-Wilmersdorf</option> 
    <option value='Reinickendorf'>Reinickendorf</option> 
    </select> 
    </form> 

,这里的脚本:

$('#BezirksAuswahl').click(function(){ 
    $('#BezirksAuswahl option:selected').each(function(){ 
     alert($(this).val()); 
    }); 
}); 

谢谢您的帮助,我很期待你的答案。

回答

1

使用change事件,该事件触发时的元素的值发生变化,就像这样:

$('#BezirksAuswahl').change(function(e){ 
    alert(this.value); 
}); 
+0

THX对您有所帮助,但遗憾的是它不工作。这三个例子中没有一个似乎触发了警报事件。萤火虫显示没有错误和HTML也是有效的..任何想法可能是什么问题?谢谢! – Sebsemillia 2012-03-27 15:47:00

1
$('#BezirksAuswahl').change(function(){ 
     alert($(this).val()); 
}); 
+0

thx为您的帮助,但不幸的是它不起作用。这三个例子中没有一个似乎触发了警报事件。萤火虫显示没有错误和HTML也是有效的..任何想法可能是什么问题?谢谢! – Sebsemillia 2012-03-27 15:47:29

+0

这里是一个的jsfiddle页面显示代码工程.. http://jsfiddle.net/D99JW/ 可能是,如果你发布你的整个代码中,我们可能会发现,可能阻止这种情况发生的解决方案.. – 2012-03-27 15:49:53

1

它很简单..尝试这个

$('#BezirksAuswahl').change(function(){ 
     var selected_value = $(this).val(); 
}); 
+0

'$ (this).val()'是两个不必要的函数调用,因为元素的'value'属性可以通过'this.value'获得。 – 2012-03-27 15:36:36

+0

thx为您提供帮助,但不幸的是它不起作用。这三个例子中没有一个似乎触发了警报事件。萤火虫显示没有错误和HTML也是有效的..任何想法可能是什么问题?谢谢! – Sebsemillia 2012-03-27 15:48:01

1

检查您的JQuery包括,你不能正确包含Jquery。你参考什么版本?

确保您运行的脚本加载的JQuery时:

$(document).ready(function() { 
    $('#BezirksAuswahl').change(function(e){ 
    alert(this.value); 
    }); 
}); 
+0

运行“$()。jquery;”在控制台,告诉我们你所看到的 – Zac 2012-03-27 16:20:32

+0

我跑1.7.1,它的正确实施。这个问题/问题是一个巨大的CMS项目中的一小部分和所有其他的js/jQuery的相关的东西做工精细.. – Sebsemillia 2012-03-27 17:02:07

+0

明显它的工作原理,如果我直接将其包含在HTML源代码,如果我把它放在外部脚本,它不.. – Sebsemillia 2012-03-27 17:12:53