Вы пытаетесь открыть диалоговое окно перед его инициализацией!
Первый щелчок, ваш диалог инициализируется.
$("#del-"+id+"").dialog("open"); // does nothing
// init the dialog but does not open because autoOpen: false
$("#del-"+id+"").dialog(dialogOpts);
Второй щелчок, когда он наконец открывается.
Либо , переместите вызов метода "open" после инициализации и до return false;
$("#del-"+id+"").dialog(dialogOpts);
$("#del-"+id+"").dialog("open");
return false;
Или измените параметр autoOpen
на true и удалите "открытый" вызов метода
//$("#del-"+id+"").dialog("open");
var dialogOpts = {
...
autoOpen: true,
...
};
$("#del-"+id+"").dialog(dialogOpts);