В вашем коде есть несколько проблем.
Проблемы с синтаксисом
1. Лучше избегать установки фигурных скобок на собственные строки, или автоматическиВставка точки с запятой даст вам некоторое время.
Обновление (21 июля 2015 г.): Как указано в комментариях, все должно быть хорошо вэтот случай, поскольку возвращение литерала объекта отличается от крайнего случая.Я все же предпочитаю поставить скобку на той же линии, чтобы быть в безопасности.
Поэтому вместо этого:
function sayHello()
{
alert('Hello, world!');
}
Вы должны сделатьэто:
function sayHello() {
alert('Hello, world!');
}
2. Вы не должны использовать скобки вокруг чехлов.Вместо этого заканчивайте их операторами break.
Обновление (21 июля 2015 г.): Использование скобок - это нормально, но они не заменяют break
.Если вы не используете его, он «провалится» в следующий случай после выполнения этого конкретного случая.
Неправильно:
switch (number) {
case 4: {
doSomething();
}
case 9: {
doSomething();
}
}
Исправить:
switch (number) {
case 4:
doSomething();
break;
case 9:
doSomething();
break;
}
3. Оператор switch и функция не закрыты.
4. В этой строке есть синтаксическая ошибка.
alert("Slots is: " + slots " cfopValue is:" + cfopValue);
// ^---here
Это правильный синтаксис:
alert("Slots is: " + slots + " cfopvalue is:" + cfopvalue);
Проблемы стилей
1. Вы можете комбинировать несколько операторов var.
Вместо этого:
var a = 'foo';
var b = 'bar';
var c = 'baz';
Вы можете сделать это:
var a = 'foo',
b = 'bar',
c = 'baz';
2. Вы можете объединять несколько случаев в операторах switch.
switch (number) {
case 3:
case 12:
doSomething();
break;
}
3.
alert("Slots is: " + slots + " cfopvalue is:" + cfopvalue);
Это покажет что-то вроде этого:
Слоты: 10 cfopvalue: 20
Вы можете вставить разрыв строки (\n
), чтобы он выглядел лучше:
alert("slots is: " + slots + "\n" + "cfopvalue is: " + cfopvalue);
Слотов: 10cfopvalue: 20
4. Храните содержимое, стили и сценарии отдельно.Поэтому вместо использования встроенных обработчиков событий лучше настроить обработчики событий в своем коде JS, например:
function addEvent(element, eventType, eventHandler) {
if (window.addEventListener) {
element.addEventListener(eventType, eventHandler, false);
} else {
element.attachEvent('on' + eventType, eventHandler);
}
}
Пример использования:
addEvent(document.getElementsByName('submit'), 'click', function() {
ProcessOrder('0', '167', '44');
});
Вы также можете использовать библиотекукак jQuery [документы] .Это упростит задачу.
Обновление (21 июля 2015 г.): Библиотеки, такие как jQuery, являются полезным инструментом, но вы не должны полностью полагаться на них.Также важно знать «ванильный» JavaScript.
jQuery обрабатывает кросс-браузерные несовместимости и использует селекторы CSS для выбора элементов.Для справки, вот как вы могли бы написать приведенный выше код обработчика событий с помощью jQuery:
$('[name="submit"]').click(function () {
ProcessOrder('0', '167', '44');
});