Зрозуміло, що десь у вашому сценарії (сценаріях) подія "натискання" знову прив'язується до того ж елемента, як і кілька інших відповідей / коментарів.
У мене була подібна проблема, і для того, щоб переконатися, я просто додав console.logкоманду до свого сценарію, як у наступному фрагменті:
$("#link_button")
.button()
.click(function () {
console.log("DEBUG: sliding toggle...");
$("#attachmentForm").slideToggle("fast");
});
Якщо натиснувши кнопку, ви отримаєте щось подібне до зображення нижче на консолі розробника вашого браузера (як я це зробив), то ви точно знаєте, що click()подія двічі було прив’язано до однієї і тієї ж кнопки.

Якщо вам потрібен швидкий виправлення, рішення, запропоноване іншими коментаторами щодо використання offметоду (btw unbindзастаріло з часу jQuery 3.0), щоб відключити подію до (повторного) прив'язування, воно добре працює, і я рекомендую також:
$("#link_button")
.button()
.off("click")
.click(function () {
$("#attachmentForm").slideToggle("fast");
});
На жаль, це лише тимчасовий патч! Після того, як проблема із тим, щоб зробити вас шефом щасливою, буде вирішена, вам слід ще трохи зануритися в свій код і виправити проблему "дублювання прив'язки".
Фактичне рішення, звичайно, залежить від конкретного випадку використання. У моєму випадку, наприклад, виникла проблема "контексту". Мою функцію викликали в результаті виклику Ajax, застосованого до певної частини документа: перезавантаження всього документа фактично перезавантажувало і контекст "сторінки", і "елемент", в результаті чого подія була пов'язана з елементом двічі .
Моє рішення цієї проблеми в тому, щоб ефективно використовувати JQuery одну функцію, яка є таким же , як на за винятком , що подія автоматично несвязанное після його першого виклику. Це було ідеально для мого випадку використання, але, знову ж таки, це не може бути рішенням для інших випадків використання.