У меня есть две почти одинаковые простые скрипты JS, вызывающие функцию при выборе смены. Имя функции совпадает с именем ID в обоих случаях, но по какой-то причине первая скрипка работает нормально, а вторая с ошибкой JavaScript is not a function
:
http://jsfiddle.net/AZkfy/7/ - отлично работает в FF9 (Linux), Chromium 16 (Linux), IE8 (Windows):
<script>
function border(border) { alert(border); }
</script>
<select id='border' name='border' onchange='border(this.value)'>
<option value='foo'>foo</option>
<option value='bar'>bar</option>
</select>
и
http://jsfiddle.net/cYVzk/ - сбой в FF9 (Linux), Chromium 16 (Linux), IE8 (Windows):
<script>
function border(border) { alert(border); }
</script>
<form>
<select id='border' name='border' onchange='border(this.value)'>
<option value='foo'>foo</option>
<option value='bar'>bar</option>
</select>
</form>
Первый из всех, я не понимаю, почему первый работает отлично, а второй - не удается.
Второй - существуют ли какие-либо спецификации или ограничения JS в отношении конфликтующих имен функций JS и идентификатора элемента?