Javascript jquery对话框提供缺少:后属性id错误
我试图在这里弹出jquery对话框。 当我在对话时 具有以下代码Javascript jquery对话框提供缺少:后属性id错误,javascript,json,Javascript,Json,我试图在这里弹出jquery对话框。 当我在对话时 具有以下代码 var opt = { autoOpen: false, modal: true, width: 550, height:650, title: 'Details' }; 它很好用。我得到了弹出窗口。但是添加额外的信息让我犯了这个错误 更新后的帖子 <script> $(document).ready(function(){ $("
var opt = {
autoOpen: false,
modal: true,
width: 550,
height:650,
title: 'Details'
};
它很好用。我得到了弹出窗口。但是添加额外的信息让我犯了这个错误
更新后的帖子
<script>
$(document).ready(function(){
$(".editbt").click(function(event) {
event.preventDefault();
$.ajax({
type: "GET",
url: this.href,
cache:false,
success: function(response){
var opt = {
box :$( "#box" ),
itemname:$( "#itemname" ),
size:$( "#size" ),
potency:$( "#potency" ),
quantity:$( "#quantity" ),
allFields:$( [] ).add( box ).add(itemname).add(size).add(potency).add(quantity),
tips :$( ".validateTips" );
function updateTips( t ) {
tips
.text( t )
.addClass( "ui-state-highlight" );
setTimeout(function() {
tips.removeClass( "ui-state-highlight", 1500 );
}, 500 );
}
function checkLength( o, n, min, max ) {
if ( o.val().length > max || o.val().length < min ) {
o.addClass( "ui-state-error" );
updateTips( "Please enter the field " );
return false;
} else {
return true;
}
}
function checkRegexp( o, regexp, n ) {
if ( !( regexp.test( o.val() ) ) ) {
o.addClass( "ui-state-error" );
updateTips( n );
return false;
} else {
return true;
}
}
$( "#dialog-form" ).dialog({
autoOpen: false,
height: 600,
width: 500,
modal: true,
buttons: {
"edit": function() {
var bValid = true;
allFields.removeClass( "ui-state-error" );
bValid = bValid && checkLength( box, "box", 1, 16 );
bValid = bValid && checkLength( itemname, "itemname", 1, 16 );
bValid = bValid && checkLength( size, "size", 1, 16 );
bValid = bValid && checkLength( potency, "potency", 1, 16 );
bValid = bValid && checkLength( quantity, "quantity", 1, 16 );
if ( bValid ) {
$( "#users tbody" ).append( "<tr>" +
"<td>" + box.val() + "</td>" +
"<td>" + itemname.val() + "</td>" +
"<td>" + size.val() + "</td>" +
"<td>" + potency.val() + "</td>" +
"<td>" + quantity.val() + "</td>" +
"</tr>" );
$( this ).dialog( "close" );
}
},
Cancel: function() {
$( this ).dialog( "close" );
}
},
close: function() {
allFields.val( "" ).removeClass( "ui-state-error" );
}
});
};
if (response.length > 0) {
var wrapperelement = document.getElementById('display');
wrapperelement.innerHTML = response;
$("#dialog-form").dialog(opt).dialog("open");
}
}
});
});
});
</script>
$(文档).ready(函数(){
$(“.editbt”)。单击(函数(事件){
event.preventDefault();
$.ajax({
键入:“获取”,
url:this.href,
cache:false,
成功:功能(响应){
变量opt={
方框:$(“#方框”),
项目名称:$(“#项目名称”),
大小:$(“#大小”),
效价:$(“#效价”),
数量:$(“#数量”),
所有字段:$([])。添加(方框)。添加(项目名称)。添加(大小)。添加(效力)。添加(数量),
提示:$(“.validateips”);
函数更新(t){
提示
.文本(t)
.addClass(“ui状态突出显示”);
setTimeout(函数(){
removeClass(“ui状态突出显示”,1500);
}, 500 );
}
函数校验长度(o、n、最小值、最大值){
如果(o.val().length>max | | o.val().length0){
var wrapperelement=document.getElementById('display');
wrapperelement.innerHTML=响应;
$(“#对话框窗体”).dialog(opt).dialog(“打开”);
}
}
});
});
});
有什么想法吗??谢谢您的时间。您的语法错误。您正在创建一个javascript对象,其语法为:
var opt = {
box: $( "#box" ),
itemname: $( "#itemname" ),
size: $( "#size" ),
potency: $( "#potency" ),
quantity: $( "#quantity" ),
.
.
}
此外,不需要在框前面添加var
您还可以通过以下方式执行此操作:
var opt = new Object();
opt.box = $( "#box" );
opt.itemname: $( "#itemname" );
.
.
你为什么用=
而不是:
?你有没有费心检查控制台的错误?这些错误是不言自明的。@Zenith是的,我检查过。。它显示了错误..我不知道这是对象创建..我是第一次这么做..顺便说一句,我不是想粗鲁,只是通过将代码粘贴到JSbin或检查控制台,您将很快看到每个错误以及导致错误的原因。你以前应该一直这样做posting@Zenith好的,谢谢你的回复。如果你的意思是-var opt={xyz:function()}
,那么是的,你可以。