J'utilise trim () comme ceci:
if($('#group_field').val().trim()!=''){
Où group_field
est un élément d'entrée de type texte. Cela fonctionne dans Firefox mais quand je l'essaye sur IE8 cela me donne cette erreur:
Message: Object doesn't support this property or method
Lorsque je supprime le trim (), cela fonctionne bien sur IE8. J'ai pensé que la façon dont j'utilise trim () est correcte?
Merci à tous pour toute aide
Essayez plutôt ceci:
if($.trim($('#group_field').val()) != ''){
Plus d'informations:
Tu devrais utiliser $.trim
, comme ceci:
if($.trim($('#group_field').val()) !='') {
// ...
}
Pour autant que je sache, Javascript String n'a pas la méthode trim. Si vous souhaitez utiliser la fonction trim, utilisez
<script>
$.trim(string);
</script>
Une autre option sera de définir la méthode directement sur String
au cas où elle serait manquante:
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, '');
}
}
Ensuite, trim
fonctionnera quel que soit le navigateur:
var result = " trim me ".trim();
Pour découper globalement une entrée avec du texte de type à l'aide de 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()));
});