Lo que quiero es pasar el valor de txtComments de View (usando jquery/ajax) a Controller.JQUERY ajax que pasa el valor de MVC View al Controller
El problema es que ajax/jquery no acepta etiquetas de secuencia de comandos como cadena. Es decir, cuando ingreso cualquier etiqueta script/html en txtComments, el ajax va a la función de error y no puede ir al controlador.
Aquí es el jQuery:
$('#btnSaveComments').click(function() {
var comments = $('#txtComments').val();
var selectedId = $('#hdnSelectedId').val();
$.ajax({
url: '<%: Url.Action("SaveComments")%>?id=' + selectedId + '&comments=' + escape(comments),
type: "post",
cache: false,
success: function (savingStatus) {
$("#hdnOrigComments").val($('#txtComments').val());
$('#lblCommentsNotification').text(savingStatus);
},
error: function (xhr, ajaxOptions, thrownError) {
$('#lblCommentsNotification').text("Error encountered while saving the comments.");
}
});
});
Aquí es el controlador:
[HttpPost]
public ActionResult SaveComments(int id, string comments){
var actions = new Actions(User.Identity.Name);
var status = actions.SaveComments(id, comments);
return Content(status);
}
También probé $('#txtComments').serialize()
en lugar de escapar (comentarios), pero sigue siendo el mismo.
¡Estoy enfrentando el mismo problema! ¿cómo lo resolviste? – moji