我有表单数据,我试图发布到服务器我使用ajax,因为我有页面上的部分表单。我有一个具有这些参数的类,它是服务器上C#中的“EditModel”类。
我如何将这个变量转换为这个模型对象,以便我可以传递数据,这个模型必须使用javascript创建
function getFromData() {
//alert("hell yea");
var username = document.getElementById("Name").value;
var pa = document.getElementById("password").value;
var email = document.getElementById("Email").value;
var active = document.getElementById("IsActive").value;
}
答案 0 :(得分:1)
您需要创建一个json对象来保存发布数据,然后再发送它。这是一个使用jQuery来进行ajax调用的例子:
var $form = $('#container').find('form'); // this will find the first form element within the element with id of container
var ajaxData = {
'name': $form.find('#Name').val(),
'password': $form.find('#password').val(),
'email': $form.find('#Email').val(),
'isActive': $form.find('#IsActive').val()
};
$.ajax({
url: $form.attr('action'),
type: 'POST',
data: ajaxData,
success: function (data, textStatus, jqXHR) {
if (data.redirect) {
window.location.href = data.redirect;
} else {
alert("Something bad happened");
}
}
});
您可以让服务器端的action方法返回一些json(通过JsonResult
)并在ajax调用的success方法中检查是否存在该json。如果json存在,则POST成功,您可以适当地重定向。我在名为redirect的属性中传递了一个URL,然后我将其用于将用户重定向到成功屏幕。