Автор Тема: JQuery dialog с повече от един бутон  (Прочетена 1452 пъти)

0 Потребители и 1 Гост преглежда(т) тази тема.

edembg

  • Newbie
  • *
  • Благодарности
  • -Казани: 0
  • -Получени: 2
  • Публикации: 47
JQuery dialog с повече от един бутон
« -: 05 Януари 2012, 17:11:44 »
Здравейте.
Имам следния проблем - трябва да направя confirm с JQuery и написах това:
function show_confirm(message) {
//alert('AA');
var buttons = {};
buttons['Да'] = function() { confirm_flag = true; $(this).dialog("close");};
buttons['Отказ'] = function() { $(this).dialog("close"); };
confirm_flag = false;
$('#form_dialog').html(message);
$('#form_dialog').dialog({
title: 'Потрвърждение',
modal: true,
buttons: buttons
});
return confirm_flag;
}

<div id="form_dialog" title="Title">

Разбира се това е само частта за диалога.
Проблема е, че когато викна функцията show_confirm диалога се показва и веднага се скрива.
Не мога да разбера защо.

Ще съм благодарен за всеки съвет.
И най-ярките личности си плащат тока

yani21

  • Full Member
  • ***
  • Благодарности
  • -Казани: 1
  • -Получени: 4
  • Публикации: 201
Re: JQuery dialog с повече от един бутон
« Отговор #1 -: 05 Януари 2012, 17:52:44 »
Необходима ти е една съвсем малка корекция:
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery-ui.js"></script>
<link rel="stylesheet" type="text/css" src="jquery.css" />
<script type="text/javascript">
//Редакцията
$(document).ready(function() {
show_confirm('w');
});

function show_confirm(message) {
var buttons = {};
buttons['Да'] = function() { confirm_flag = true; $(this).dialog("close");};
buttons['Отказ'] = function() { $(this).dialog("close"); };
confirm_flag = false;
$('#form_dialog').html(message);
$('#form_dialog').dialog({
title: 'Потрвърждение',
modal: true,
buttons: buttons
});
return confirm_flag;
}

</script>
<div id="form_dialog" title="Title">
Когато правиш свои функции в jQuery има 2 варианта: единия е да ги изнесеш вън от document.ready, а другия чрез малко по-специфично задаване: http://jquery-howto.blogspot.com/2008/12/how-to-add-your-own-custom-functions-to.html, но това не е точно за твоя случай. В противен случай изникват проблеми точно като при теб.
« Последна редакция: 05 Януари 2012, 17:59:05 от yani21 »