我试图使用jquery对话框,但我一直收到此错误。
Div我用于对话:
<div id="save-dialog" title="Save">
<p>Is this a tipo or a new patch? Leave blank if its a patch</p>
<p>Enter patch like this:"CB 1"</p>
<form>
<fieldset>
<input type="text" id="patch" value=""/>
</fieldset>
</form>
</div>
完成JS:
function savex(name){
var desc = jQuery('input#'+name).val();
var id = "<?php echo $_GET[id]; ?>";
var patch = jQuery("#patch").val();
jQuery("#save-dialog").dialog({
autoOpen:false,
height:300,
width:300,
modal:true,
buttons: {
"Saving": function(){
jQuery.ajax({
url: 'editcontentheroes.php',
type: 'post',
data: 'id='+id+'&desc='+desc+'&name='+name+'&patch='+patch,
always: function(output)
{
history.go(0);
}
});
},
Cancel: function(){
jQuery(this).dialog("close");
}
}
});
}
函数savex由按钮调用。试图检查一些空变量,但没有发现任何问题。
编辑:标题是我得到的错误
Edit2:我正在使用wordpress
答案 0 :(得分:0)
一个问题是你在为'Cancel'声明的函数中引用'this',并尝试访问'dialog'元素,但是,在该函数范围内的'this'实际上引用了该函数本身,并且不是父元素,'jQuery(“#save-dialog”)'。
您可能想要改变......
Cancel: function(){
jQuery(this).dialog("close");
}
为...
Cancel: function(){
jQuery(this).parent.dialog("close");
}
如果这不是修复,那么您将需要逐步执行“保存”功能的每个可调试行。