sam*_*uel 0 html jquery textarea jquery-ui
我有一个弹出表单的模式,允许管理员编辑/更新新闻报道。它工作得很好,更新了数据库和所有内容,在模式窗口中时,只有“故事”部分出现在文本区域框之外。
几张图片将说明我的观点和困惑。
'Look YAY' 是当前的故事,被拉到 textarea 下面的区域
添加一个新故事
新故事现在在数据库中,但在模式中的 textarea 框下方
然而在实际的表单页面上,它就是它应该在的地方
我已经检查并重新检查了我的代码,但我唯一的想法是 jquery-UI 以某种方式干扰了 textarea,因为根据定义,模式中的代码等同于编辑新闻表单的代码。
这是故事元素的表单代码
Story<br/>
<textarea name="edit_story"/><?php print $row['story'];?></textarea>
Run Code Online (Sandbox Code Playgroud)
和弹出它的jquery
$('.edit').click(function(event){
//don't follow the link
event.preventDefault();
var $link = $(this).parent();
//load in the html from the form at edit_news
var formDOM = $("<div />").load($link.attr('href')+' #edit_form', function() {
//clear the dialog box
$('#dialog-edit').empty();
// Append to the page
$('#dialog-edit').append(formDOM);
//make the dialog
$('#dialog-edit').dialog({
autoOpen:false,
title:$link.attr('title'),
width:530,
height:465
})
//open it up
$('#dialog-edit').dialog('open');
$('#edit_form').submit(function(event){
//knock out its form processing
event.preventDefault();
$.ajax({
type : "post",
url : $link.attr('href'),
data : $(this).serialize(),
success : function() {
//close dialog
$('#dialog-edit').dialog('close');
}
})
})
})
});
Run Code Online (Sandbox Code Playgroud)
这里发生了什么?
如果有人有任何想法,请把他们扔给我。这很可能是一个 n00bish 编程错误,我会优雅地接受。
在将<textarea>
文本打印到其中之前,您正在关闭标签。使固定:
<textarea name="edit_story"><?php print $row['story'];?></textarea>
Run Code Online (Sandbox Code Playgroud)