2010-08-09 20 views
104

ı() şöyle süs yararlanarak ediyorum: group_field tip metnin bir giriş öğesidirIE8 ve JQuery'nın Döşeme()

if($('#group_field').val().trim()!=''){ 

. Bu Firefox'ta çalışıyor ama IE8 üzerinde denemek zaman bana bu hata veriyor:

Message: Object doesn't support this property or method 

ben döşemesini() kaldırdığınızda, IE8 üzerinde çalışıyor. Trim() yöntemini kullanmanın yolunu mu düşündüm? herhangi bir yardım

cevap

201

için tüm Bu yolu deneyin

Teşekkür:

if($.trim($('#group_field').val()) != ''){ 

Fazla Bilgi:

+1

Teşekkürler, JQuery'nin işlevlerinin zincirleme olduğunu düşündüm ve hepsi bu şekilde işe yaradı! – Abs

+0

@Abs: Hoş Geldiniz ... – Sarfraz

+38

@Abs: 'val()' jQuery nesnesini döndürmez, dolayısıyla zincirleme seçeneği dışındadır. Bir dizgede 'trim()' yöntemini çağırıyordunuz, ancak IE 'String.trim' hakkında bilmiyor. – janmoesen

15

Sen $.trim, li kullanmalıdır ke bu:

if($.trim($('#group_field').val()) !='') { 
    // ... 
} 
11

Bildiğim kadarıyla Javascript String, yöntem düzeltmesine sahip değil. Eğer fonksiyon kırpma kullanmak istiyorsanız ardından

<script> 
    $.trim(string); 
</script> 
+1

Lütfen [w3schools'a bağlantılamayın] (http://www.w3fools.com/)! –

3

kullanarak jQuery metin türü ile süs girişini genel olarak değiştirmek için kullanın:

/** 
* 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())); 
}); 
10

Diğer bir seçenek, eksik durumda String doğrudan yöntemini tanımlamak olacaktır :

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, ''); 
    } 
} 

Sonra trim ne olursa olsun tarayıcı çalışacaktır:

,
var result = " trim me ".trim();