Я смешал ответ Брэда Ларсона с Амирхосейном Мехрварзи, потому что в ответе Брэда не было никакого способа справиться с ответом, а Амирхосейн вызывал 2 постбэка. Я просто добавил ($ ('# formBacklink'). Valid ()), чтобы вызвать проверку модели перед отправкой.
window.addEventListener("submit", function (e) {
if ($('#formBacklink').valid()) {
var form = e.target;
if (form.getAttribute("enctype") === "multipart/form-data") {
if (form.dataset.ajax) {
e.preventDefault();
e.stopImmediatePropagation();
var dataString;
event.preventDefault();
var action = $("#formBacklink").attr("action");
if ($("#formBacklink").attr("enctype") == "multipart/form-data") {
//this only works in some browsers.
//purpose? to submit files over ajax. because screw iframes.
//also, we need to call .get(0) on the jQuery element to turn it into a regular DOM element so that FormData can use it.
dataString = new FormData($("#formBacklink").get(0));
contentType = false;
processData = false;
} else {
// regular form, do your own thing if you need it
}
$.ajax({
type: "POST",
url: action,
data: dataString,
dataType: "json", //change to your own, else read my note above on enabling the JsonValueProviderFactory in MVC
contentType: contentType,
processData: processData,
success: function (data) {
//BTW, data is one of the worst names you can make for a variable
//handleSuccessFunctionHERE(data);
},
error: function (jqXHR, textStatus, errorThrown) {
//do your own thing
}
});
}
}
}
}, true);
Вы имеете в виду виджет диалогового окна jQuery UI ?
При создании вы можете передать параметр, чтобы указать его высоту, например
$('.selector').dialog({ height: 350 });
Сделать его выше, чем содержание, которое вы в него вкладываете, и я подозреваю, что вы были бы золотыми.
Я не знаю точно, что вы подразумеваете под «диалоговым окном jquery», но стандартный способ отключить полосы прокрутки - установить для свойства переполнения div значение 'hidden'
, поместите это в свой файл css:
div.class_name {
overflow: hidden;
}