IE8 y recorte de JQuery()
internet-explorer internet-explorer-8 (5)
Deberías usar http://api.jquery.com/jQuery.trim/ , así:
if($.trim($(''#group_field'').val()) !='''') {
// ...
}
Estoy haciendo uso de trim () así:
if($(''#group_field'').val().trim()!=''''){
Donde group_field
es un elemento de entrada de tipo texto. Esto funciona en Firefox pero cuando lo pruebo en IE8 me da este error:
Message: Object doesn''t support this property or method
Cuando elimino el ajuste (), funciona bien en IE8. Pensé que la forma en que estoy usando trim () es correcta?
Gracias a todos por cualquier ayuda
Hasta donde yo sé, Javascript String no tiene el método de recorte. Si desea usar el ajuste de función, use
<script>
$.trim(string);
</script>
Otra opción será definir el método directamente en String
en caso de que falte:
if(typeof String.prototype.trim !== ''function'') {
String.prototype.trim = function() {
//Your implementation here. Might be worth looking at perf comparison at
//http://blog.stevenlevithan.com/archives/faster-trim-javascript
//
//The most common one is perhaps this:
return this.replace(/^/s+|/s+$/g, '''');
}
}
Entonces, el trim
funcionará independientemente del navegador:
var result = " trim me ".trim();
Para recortar globalmente la entrada con texto tipo usando jQuery:
/**
* Trim the site input[type=text] fields globally by removing any whitespace from the
* beginning and end of a string on input .blur()
*/
$(''input[type=text]'').blur(function(){
$(this).val($.trim($(this).val()));
});
Pruebe esto en su lugar:
if($.trim($(''#group_field'').val()) != ''''){
Más información: