在JQuery中不起作用。我看不出错误:
<input type="text" name="name" class="inputsearch field" onchange="this.val($.trim(this.val()));"/>
感谢您的帮助!
答案 0 :(得分:6)
this
是dom引用,因此它没有.val()
方法,它有一个属性value
,您可以使用它。
<input type="text" name="name" class="inputsearch field" onchange="this.value = $.trim(this.value);"/>
演示:Fiddle
或者您可以访问jQuery包装器并使用.val()
<input type="text" name="name" class="inputsearch field" onchange="$(this).val($.trim($(this).val()));"/>
但我建议不要使用内联事件处理程序,并建议使用
等脚本添加处理程序<input type="text" name="name" class="inputsearch field"/>
然后
jQuery(function(){
$('input[name="name"]').change(function(){
this.value = $.trim(this.value);
})
})
演示:Fiddle
答案 1 :(得分:2)
您不会编写内联jQuery
代码,也无法在此处调用val()
,而您需要$(this)
。使用this
将当前对象传递给javascript函数。在javascript函数中,在将DOM对象转换为jQuery对象
<input type="text" name="name" class="inputsearch field" onchange="someFun(this)"/>
function someFun(obj)
{
$(obj).val($.trim(obj.val()));
}
答案 2 :(得分:1)
this
是javascript,val()
是jquery方法
<input type="text" name="name" class="inputsearch field" onchange="$(this).val($.trim($(this).val()));"/>
答案 3 :(得分:1)
试试这个
<input type="text" name="name" class="inputsearch field" onchange="$(this).val($.trim($(this).val()));"/>