У меня проблемы с диалоговом окне jquery. У меня есть несколько divs, действующих как кнопки, и вы хотите открыть диалог с разными результатами, в зависимости от щелчка div. Это все работает, но когда я нажимаю вторую кнопку, я получаю сообщение об ошибке «TypeError: $ (...). Dialog не является функцией».jquery ui dialog wont open again
Если я удалю вызов ajax, он работает нормально, поэтому я предполагаю, что мне нужно «удалить» или «закрыть» что-то, чтобы получить последующие нажатия кнопок для работы.
Предупреждение() срабатывает одновременно, но после этого ничего не происходит.
В упрощенном коде у меня есть REMMED вызов ajax, поэтому он будет работать, но, конечно, с пустыми диалогами.
<!doctype html>
<html lang='en'>
<head>
</head>
<body>
<div class='row'>
<div class='large-3 columns'>
<div class='floatleft changepriority' id='1026' style='padding:6px;'>[1026] 0 : </div>
<div class='floatleft changepriority' id='715' style='padding:6px;'>[715] 1000 : </div>
<!-- Various more "buttons" -->
</div>
</div>
<script src='bower_components/jquery/dist/jquery.js'></script>
<script src='/js/jquery-ui.js'></script>
<script src='bower_components/what-input/what-input.js'></script>
<script src='bower_components/foundation-sites/dist/foundation.js'></script>
<script>
$(document).ready(function() {
$(document).foundation();
$('#changetasklist').dialog({
modal: true,
autoResize:true,
/*
open: function() {
$(this).load('/ajax/changetasklist.php?tl=' + $('#changetasklist').data('tasklist'));
},
*/
position: { my: 'center top', at: 'center top+20', of: window },
width:700,
title: 'Update Task Heading',
autoOpen: false, // makes #box hidden when the page starts
closeOnEscape: true, // closes when ESC is pressed, as well as the [x] top right.
});
$('.changepriority').click(function() {
alert('clicked');
$('#changetasklist').data('tasklist', this['id']);
$('#changetasklist').dialog('open'); // open the box
});
});
</script>
<div id='changetasklist'></div>
</body>
</html>
Попробуйте ссылаться на элемент непосредственно, а не 'this', я думаю, это не то, что вы ожидаете' $ ("# changetasklist"). Load (...) ' – Steve
Если вы положили перерыв на вызов ajax, вы попадаете туда во второй раз. Это где код не работает? – Steve
@steve извините, непонятно, что вы предлагаете, что я делаю с «этим». Я вижу только одно это, то есть это ['id'], которое получает идентификатор щелкнутого элемента, id = '1026' или id = '715'. и в моем коде нет нагрузки(). Можете уточнить, пожалуйста? –