2010-09-21 15 views

Odpowiedz

1

Użyj narzędzia FireBug i sprawdź, co jest ukryte przed aktualizacją textarea. Następnie sprawdź ten element.

if (document.getElementById('fckinstance').innerHTML === '') { 
    alert('required field'); 
} 

To tylko przykład. Prawdopodobnie nie korzysta się z tego również z powodu wielu instancji na tej samej stronie.

The textarea, który FCKeditor zastępuje to prawdopodobnie ten, który przechowuje jego HTML.

Uwaga: FCKeditor może wyglądać na pusty, mimo że zawiera kod HTML.

1

do sprawdzania poprawności FCKeditor za to pusta, tworzyć poniżej funkcji i wywołać ją, gdy zamierza zweryfikować edytor zawierający TEXTAREA:

function FCKCopy() { 
    for (var i = 0; i < parent.frames.length; ++i) { 
     if (parent.frames[i].FCK) 
      parent.frames[i].FCK.UpdateLinkedField(); 
    } 
} 

Następnie dodać kolejną funkcję do Gazy tagi HTML od wartości textarea za:

function stripHTML(oldString) { 
    var matchTag = /<(?:.|\s)*?>/g; 
    return $.trim(oldString.replace(matchTag, "")); 
} 

W powyższej funkcji używanych funkcji przycinania jQuery. Używać jQuery lub zastąpienie go jakimś przycinania funkcją skryptu Java, takich jak:

function trimIt(text) { 
    rwhite = /\s/; 

    trimLeft = /^\s+/; 
    trimRight = /\s+$/; 

    if (!rwhite.test("\xA0")) { 
     trimLeft = /^[\s\xA0]+/; 
     trimRight = /[\s\xA0]+$/; 
    } 

    return text.toString().replace(trimLeft, "").replace(trimRight, ""); 
} 

Teraz można sprawdzić wartość TEXTAREA na przykład jak poniżej:

if (stripHTML($('message').val()) == '') { 
    alert('Please enter Message.'); 
} 

nadzieję, że to działa tak dobrze, jak pracował mnie.

Baw