Проверка внутри тега div с innerhtml в JavaScript? - PullRequest
2 голосов
/ 03 сентября 2010

я пытаюсь сделать регистрационную форму с проверкой проверки AJAX.проверка проверки в порядке.я заставляю его показывать изображение cross.png, когда возникает проблема с полем в форме.

, но я хочу не позволять посетителям применять регистрационную форму в случае возникновения проблемы.

Я пытался проверить на ошибки

if(document.getElementById('username_error_icon').innerHTML!='<img src="cross.png" width="15" height="15" />'){
document.form1.submit();    
}

, которые не работали: / im open to offer, помогите, пожалуйста: /

Ответы [ 5 ]

1 голос
/ 03 сентября 2010

Не рекомендуется проверять что-то вроде этого, сравнивая две строки, которые могут измениться.

Вместо этого я рекомендую вам установить переменную типа bErrOccurred = true, где вы устанавливаете источник изображения для скрещивания.png, а затем ваш оператор if должен выглядеть следующим образом:

if(!bErrOccurred) {
    document.form1.submit();   
}
1 голос
/ 03 сентября 2010

Ну, если вы все еще хотите это сделать, вы можете сделать это

    <div id="username_error_icon">
        <img id="myValidationImage" src="cross.png" width="15" height="15" />
    </div>

<script type="text/javascript">
    var validationImage = document.getElementById('myValidationImage').src;
    var imageName = validationImage.lastIndexOf('.');
    validationImage = validationImage.substring(validationImage.lastIndexOf('/') + 1, imageName < 0 ? validationImage.length : imageName);
    if (validationImage != "cross")
        document.form1.submit();
    </script> 
1 голос
/ 03 сентября 2010

Точное значение innerHTML элемента не является постоянным во всех браузерах.Вы не должны полагаться на это.Некоторые браузеры переупорядочивают порядок атрибутов, переписывают путь к «src».

Вы должны сделать что-то вроде этого:

0 голосов
/ 04 сентября 2010

нормально проблема решена. изменив php-код, который возвращает информацию в ajax-код. я изменил код php, чтобы вернуть результат проверки без HTML-тега, но с 0 или 1 или 2 и т. д. а затем изменил код JavaScript, чтобы сделать правильные изменения в HTML, предназначенные для этих возвращаемых значений

0 голосов
/ 03 сентября 2010

хорошо, как мне кажется, мне нужно изменить весь код ajax, чтобы получить только результат проверки в виде переменной из php без каких-либо HTML-тегов и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...