pod chromem chodzi dobrze , a opera zawiesza sie na wywołaniu funkcji $(jakistamobiekt).
skoro length pomaga, to byc moze przez firebuga zmienna jest wyswietlana jako null, a w rzeczywistosci to pusty string "".
var validatorResult = window[validatorName].call(fieldInGroup);
if (validatorResult == null || (!(validatorResult.length)))
{
// do nothing
}
else
{
onFail(groupName, validatorResult);
}
dalej nie dziala :/
function validateAllFieldsInGroup(objectChanged)
{
var groupName= $(objectChanged).attr(VALIDATOR_GROUP_OF_FIELDS_ATTR);
var stopEverything=false;
var allFieldsInGroup = $(byClass(groupName));
for (var fieldsCount=0, fieldsMax = allFieldsInGroup.length; fieldsCount < fieldsMax;fieldsCount++)
{
if (stopEverything == false)
{
var fieldInGroup = allFieldsInGroup[fieldsCount];
var validatorsOfThisField = extractValidatorNamesFromFields(fieldInGroup);
if (validatorsOfThisField != null)
{
for (var validatorsCount = 0, validatorsMax = validatorsOfThisField.length; validatorsCount<validatorsMax; validatorsCount++)
{
if (stopEverything==false)
{
var validatorName = validatorsOfThisField[validatorsCount];
try
{
var validatorResult = window[validatorName].call(fieldInGroup);
if (validatorResult.length)
{
onFail(groupName, validatorResult);
stopEverything=true;
}
}
catch (e)
{}
}
}
}
}
}
onSuccess(groupName);
}
dobra znalazlo sie obejscie. jesli string istnieje to validator.length nie wywala bledu i wykonuje sie kod z faila.
jesli jest pusty to wywala blad i łapie go catch. jednak smiech zeby w ogole sie pojawialo takie cos i jeszcze wstrzymywalo z robotą godzine...