我有一个从Mysql中填充的PHP表格,并且我正在使用JQuery来监听是否单击了一个按钮,如果单击了,它将获取与他们单击的相关名称的注释。它全部都很好地工作,只有一个问题。有时候当你单击它并且对话框(JQuery UI)窗口打开时,在文本区域中没有任何内容。如果您再次单击它,它会再次弹出。所以看起来有时候值可能被抛出了?我不太确定,需要帮助。
代码:
请让我知道是否需要其他帮助!
更新:
基本布局是
代码:
$(document).ready(function () {
$(".NotesAccessor").click(function () {
notes_name = $(this).parent().parent().find(".user_table");
run();
});
});
function run(){
var url = '/pcg/popups/grabnotes.php';
showUrlInDialog(url);
sendUserfNotes();
}
function showUrlInDialog(url)
{
var tag = $("#dialog-container");
$.ajax({
url: url,
success: function(data) {
tag.html(data).dialog
({
width: '100%',
modal: true
}).dialog('open');
}
});
}
function sendUserfNotes()
{
$.ajax({
type: "POST",
dataType: "json",
url: '/pcg/popups/getNotes.php',
data:
{
'nameNotes': notes_name.text()
},
success: function(response) {
$('#notes_msg').text(response.the_notes)
}
});
}
function getNewnotes(){
new_notes = $('#notes_msg').val();
update(new_notes);
}
// if user updates notes
function update(new_notes)
{
$.ajax({
type: "POST",
//dataType: "json",
url: '/pcg/popups/updateNotes.php',
data:
{
'nameNotes': notes_name.text(),
'newNotes': new_notes
},
success: function(response) {
alert("Notes Updated.");
var i;
$("#dialog-container").effect( 'fade', 500 );
i = setInterval(function(){
$("#dialog-container").dialog( 'close' );
clearInterval(i);
}, 500);
}
});
}
/******is user closes notes ******/
function closeNotes()
{
var i;
$("#dialog-container").effect( 'fade', 500 );
i = setInterval(function(){
$("#dialog-container").dialog( 'close' );
clearInterval(i);
}, 500);
}
请让我知道是否需要其他帮助!
更新:
基本布局是
<div>
<div>
other stuff...
the table
</div>
</div>
var i = setInterval(function(){ $("#dialog-container").dialog("close"); clearInterval(i); }, 500);
与setTimeout(function(){ $("#dialog-container").dialog("close"); }, 500)
是相同的。 - Andreas