Конструкция if than else в ajax запросе

Рейтинг: -1Ответов: 2Опубликовано: 10.04.2015

Есть код:

window.operateEvents = {
    'click .remove': function (e, value, row, index) {
    $('#myModal').modal(),
    if ($('#myModal').click()){
        $.ajax({
            type: "POST",
               data: "somedata=1"+JSON.stringify(row),
               url: "engine.php",
                           success: function(html){
                           $('#table').bootstrapTable('remove', {
            field: 'id',
            values: [row.id]
        })
               }

            });
            }
    }

Сам по себе без if он вполне рабочий, но мне нужно чтобы часть с ajax выполнялась только после клика по #myModal. Как реализовать ?

Ответы

▲ 3Принят
$('#myModal').click(function() {
   $.ajax({
      type: "POST",
      data: "somedata=1"+JSON.stringify(row),
      url: "engine.php",
      success: function(html){
         $('#table').bootstrapTable('remove', {
            field: 'id',
            values: [row.id]
        });
      }
   });
});

Функцию клика не нужно вызывать через If, она срабатывает только при условии нажатия на нужный элемент. И старайтесь всё таки писать чище код, вам же самому будет удобнее его читать :)

▲ 2

$('#myModal').click() программно вызывает само событие и если на нем нет никаких обработчиков, то ничего не произойдет. Для того, чтобы установить какую-то обработку на событие клика, используйте

$('#myModal').click(function() {
    //обработка
});