以下是http://jsfiddle.net/39puK/表单 console.log显示以下数据,得到.serialize():
product_id=1&quantity=12&price_base=1&markup_k=1&markup_a=0&price=1&sales=true&priority=1&offered=shipped&date=&distributor_id=22&create_delivery=false&delivery_date=&delivery_quantity=
但Firebug告诉我http://savepic.net/4035933.htm
product_id=3&quantity=1&price_base=1&markup_k=1&markup_a=0&price=1&sales=true&priority=1&offered=shipped&date=&distributor_id=22&create_delivery=false&delivery_date=&delivery_quantity=&0=p&1=r&2=o&3=d&4=u&5=c&6=t&7=_&8=i&9=d&10=%3D&11=3&12=%26&13=q&14=u&15=a&16=n&17=t&18=i&19=t&20=y&21=%3D&22=1&23=%26&24=p&25=r&26=i&27=c&28=e&29=_&30=b&31=a&32=s&33=e&34=%3D&35=1&36=%26&37=m&38=a&39=r&40=k&41=u&42=p&43=_&44=k&45=%3D&46=1&47=%26&48=m&49=a&50=r&51=k&52=u&53=p&54=_&55=a&56=%3D&57=0&58=%26&59=p&60=r&61=i&62=c&63=e&64=%3D&65=1&66=%26&67=s&68=a&69=l&70=e&71=s&72=%3D&73=t&74=r&75=u&76=e&77=%26&78=p&79=r&80=i&81=o&82=r&83=i&84=t&85=y&86=%3D&87=1&88=%26&89=o&90=f&91=f&92=e&93=r&94=e&95=d&96=%3D&97=s&98=h&99=i&100=p&101=p&102=e&103=d&104=%26&105=d&106=a&107=t&108=e&109=%3D&110=%26&111=d&112=i&113=s&114=t&115=r&116=i&117=b&118=u&119=t&120=o&121=r&122=_&123=i&124=d&125=%3D&126=2&127=2&128=%26&129=c&130=r&131=e&132=a&133=t&134=e&135=_&136=d&137=e&138=l&139=i&140=v&141=e&142=r&143=y&144=%3D&145=f&146=a&147=l&148=s&149=e&150=%26&151=d&152=e&153=l&154=i&155=v&156=e&157=r&158=y&159=_&160=d&161=a&162=t&163=e&164=%3D&165=%26&166=d&167=e&168=l&169=i&170=v&171=e&172=r&173=y&174=_&175=q&176=u&177=a&178=n&179=t&180=i&181=t&182=y&183=%3D
可以注意到输入名称(如product_id)变成了这样的
p&1=r&2=o&3=d&4=u&5=c&6=t&7=_&8=i&9=d&10=
并进入product_id=3
为什么呢?如何解决这个问题?
以下完整代码:
$('#main_wrap').on('click', '.show_offer_info_modal_window', function() {
var product_id = $(this).attr('data-product-id');
$.ajax({
url : "manage/get_offer_info.php",
type : "GET",
//dataType: "json",
data : {
product_id : product_id
}, // конец data
success : function(data, textStatus) {
$('#modal_window').html(data);
$('#modal_window').append(close_link);
// Валидация формы добавления предложения
$('#add_offer_form').validate({
submitHandler: function(form) {
console.log(jQuery('#add_offer_form').serialize());
$(form).ajaxSubmit({
url : "manage/add_offer.php",
type : "POST",
dataType: "json",
data : jQuery('#add_offer_form').serialize(), // конец data
success : function(data, textStatus) {
if ( data.result == 'success' )
{
// И отобразить сообщение о результате
$( "#dialog" ).html('Предложение успешно добавлено');
$( "#dialog" ).dialog({
dialogClass: 'fixed-dialog',
draggable: false,
resizable: false,
height: "auto",
width: "350",
modal: true,
position : { my: "center", at : "center", of : "body" },
buttons: {
Ok : function() {
$( this ).dialog( "close" );
}
}
});
$('.close-reveal-modal').click();
$('[data-product-id='+product_id+']').click();
//$('.back_link [data-id=add_offer]').click(); // перелистывание назад, к первой странице в случае успешного добавления предложения
//$('#offers_container').after('<tr>');
}
else
{
// И отобразить сообщение о результате
$( "#dialog" ).html('Произошла ошибка. Попробуйте обновить страницу');
$( "#dialog" ).dialog({
dialogClass: 'fixed-dialog',
draggable: false,
resizable: false,
height: "auto",
width: "350",
modal: true,
position : { my: "center", at : "center", of : "body" },
buttons: {
Ok : function() {
$( this ).dialog( "close" );
}
}
});
}
}, // конец success
error : function(xhr,errmsg,err) {
$('#modal_window').html('Произошла ошибка. Попробуйте обновить страницу.'+close_link);
} // конец error
});
},
rules:{
price_base:{
required: true,
minlength: 1,
maxlength: 8,
number: true,
},
quantity:{
required: true,
digits: true,
maxlength: 6,
},
sales:{
required: true,
},
distributor_id:{
required: true,
},
delivery_date:
{
required: {
depends: function(element){
return $('#create_delivery').val() != 'false'
}
},
},
delivery_quantity:
{
required: {
depends: function(element){
return $('#create_delivery').val() != 'false'
}
},
digits: {
depends: function(element){
return $('#create_delivery').val() != 'false'
}
},
},
},
});
}, // конец success
error : function(xhr,errmsg,err) {
$('#modal_window').html('Произошла ошибка. Попробуйте обновить страницу.'+close_link);
} // конец error
}); // конец ajax
});
//