Я могу кодировать ту же функциональность для 2 идентификационных элементов, в один клик функционируют?

Другие ответы превосходны, и я не хочу повторять то, что они сказали.

Еще один аспект к, "почему включают предупреждения", который не был правильно затронут, - то, что они помогают чрезвычайно с обслуживанием кода. Когда Вы пишете программу значительного размера, становится невозможно сохранить все это в Вашей голове сразу. У Вас обычно есть функция или три, что Вы активно пишете и думаете о, и возможно файл или три на Вашем экране, к которому можно обратиться, но объем программы существует в фоновом режиме где-нибудь, и необходимо положить, что это продолжает работать.

предупреждения Наличия на, и наличие их максимально энергичный и в Вашей поверхности, помогают предупредить Вас, если что-то, что Вы изменяете, создает неприятности чему-то, что Вы не видите.

Берут, например, лязг, предупреждающий -Wswitch-enum. Это инициировало предупреждение, если Вы используете переключатель на перечислении и пропускаете одно из возможных перечислимых значений. Это - что-то, что Вы могли бы думать, будет маловероятная ошибка сделать: Вы, вероятно, по крайней мере, посмотрели на список перечислимых значений, когда Вы записали оператор переключения. У Вас мог бы даже быть IDE, который генерировал опции переключателя для Вас, не оставив места для человеческой ошибки.

Это предупреждение действительно добивается признания, когда, шесть месяцев спустя Вы добавляете другую возможную запись в перечисление. Снова, если Вы будете думать о рассматриваемом коде, то Вы, вероятно, будете в порядке. Но если это перечисление используется в нескольких различных целях, и это для одного из тех, которые Вам нужна дополнительная опция, очень легко забыть обновлять переключатель в файле, которого Вы не касались в течение 6 месяцев.

можно думать о предупреждениях таким же образом, как Вы думали бы об автоматизированных тестовых сценариях: они помогают Вам удостовериться, что код разумен и делает, в чем Вы нуждаетесь, когда Вы сначала пишете это, но они помогают еще больше удостовериться, что это продолжает делать то, в чем Вы нуждаетесь, в то время как Вы подталкиваете в нем. Различие - то, что тестовые сценарии работают очень узко к требованиям Вашего кода, и необходимо записать им, в то время как предупреждения работают широко к разумным стандартам почти для всего кода, и они очень великодушно предоставляются исследователями, которые делают компиляторы.

10
задан Angeline 4 September 2009 в 06:57
поделиться

3 ответа

Просто используйте разделитель запятой в селекторе:

$("#myFormsTabSubmitted, #formStatusSubmitted").click(function() {
  // do stuff
});
21
ответ дан 3 December 2019 в 15:06
поделиться

Очевидно, что лучше всего использовать запятую, но я хотел бы отметить, что функции на любом языке предназначены для того, о чем вы спрашиваете, а именно для написания кода один раз для нескольких элементов. . Я думаю, что документация jquery создает впечатление, что функции должны следовать за событиями, а они этого не делают. Вы можете использовать:

function formSubmit() {
                        $('#allMyForms').hide();
                        $('#draftedMyForms').hide();
                        $('#submittedMyForms').show();
                        $('#myFormsTab').find(".selected").removeClass();
                        $('#myFormsTabSubmitted').addClass("selected");
}

$('#myFormsTabSubmitted, #formStatusSubmitted').click(formSubmit);

или

$('#myFormsTabSubmitted').click(formSubmit);
$('#formStatusSubmitted').click(formSubmit);

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

1
ответ дан 3 December 2019 в 15:06
поделиться

Конечно! Самым простым изменением кода будет добавление запятой:

$('#myFormsTabSubmitted, #formStatusSubmitted').click(...);

Вы также можете сохранить ссылку на свой обработчик кликов и добавить ее в несколько вариантов выбора:

var myHandler = function () { ... };
$('#myFormsTabSubmitted').click(myHandler);
$('#formStatusSubmitted').click(myHandler);
8
ответ дан 3 December 2019 в 15:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: