我的印象是,我可以通过执行这个$(this).val()来获取一个选择输入的值;并将onchange参数应用到select字段。
只有在引用ID时,它才会起作用。
我怎么用这个。
我的印象是,我可以通过执行这个$(this).val()来获取一个选择输入的值;并将onchange参数应用到select字段。
只有在引用ID时,它才会起作用。
我怎么用这个。
当前回答
请注意,如果这些不工作,这可能是因为DOM还没有加载,您的元素还没有找到。
若要修复,请将脚本放在正文的末尾或使用文档就绪
$.ready(function() {
$("select").on('change', function(ret) {
console.log(ret.target.value)
}
})
其他回答
尝试事件委托方法,这几乎适用于所有情况。
$(document.body).on('change',"#selectID",function (e) {
//doStuff
var optVal= $("#selectID option:selected").val();
});
寻找jQuery站点
HTML:
<form>
<input class="target" type="text" value="Field 1">
<select class="target">
<option value="option1" selected="selected">Option 1</option>
<option value="option2">Option 2</option>
</select>
</form>
<div id="other">
Trigger the handler
</div>
JAVASCRIPT:
$( ".target" ).change(function() {
alert( "Handler for .change() called." );
});
jQuery的例子:
为所有文本输入元素添加有效性测试:
$( "input[type='text']" ).change(function() {
// Check input( $( this ).val() ) for validity here
});
我的印象是,我可以得到一个选择的值 输入$(this).val();
如果你不引人注目地订阅(这是推荐的方法),这是有效的:
$('#id_of_field').change(function() {
// $(this).val() will work here
});
如果你在脚本中使用onselect和mix标记,你需要传递一个引用到当前元素:
onselect="foo(this);"
然后:
function foo(element) {
// $(element).val() will give you what you are looking for
}
$('#select-id').change(function() {
console.log($(this).val());
});
我有一个例子来帮助新想法。 我希望这对任何人都有帮助。
$('#editpricelist_box').change(function ($e){
$('input[name="edit_unit_price"]').val(parseFloat(this.val()).toFixed(2));
console.log(this.val());
});