У меня была проблема с jQuery, так как я не смог найти элемент <form>
в моем HTML за последние полтора дня. Я несколько раз запускал свой HTML-код через валидаторы, проверял мои JS и CSS и даже удалял ненужные файлы JS и CSS, которые теперь сводятся к следующему:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Test</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/2.8.0r4/build/reset/reset-min.css" />
</head>
<body>
<form>
<input type="textbox" name="action" value="view"></input>
<button>Test</button>
</form>
</body>
</html>
После того, как я сократил свой HTML до «голых костей», я проверил, может ли jQuery просто получить элемент <form>
, используя $('form')
. Ну, jQuery ничего не вернул. Это полностью вывернуто. Он ничего не возвращал, даже объект jQuery. Итак, снова я продолжил свое безумие, проверяя HTML и т. Д. И т. Д., И все еще ничего!
Я переписал HTML второй раз, но не совсем так, и это сработало! Поэтому я разложил два файла и начал подправлять исходный файл, чтобы постепенно стать идентичным новому файлу, который я только что написал. Что ж, получается, что значение атрибута name
было виновником, который все испортил! Простое изменение значения на значение, отличное от action
, позволило jQuery наконец-то получить элемент <form>
! В самом деле?! ! @ # $% @ # !!!
Итак, мои вопросы: Является ли action
ключевым словом в jQuery и как значение атрибута портит все?
Если это ключевое слово, и вы не хотите объяснять почему, не могли бы вы указать мне на документацию по этому вопросу, чтобы я мог ударить себя по голове после прочтения. Все еще кажется довольно странным, что значение атрибута испортило бы ситуацию, но это, вероятно, потому, что я не знаю о реализации jQuery. =)