passing multiple parameters using Ajax(url) in c#
16,164
You can use something like this:
Ajax
$.ajax({
type: 'GET',
url: 'Home/AddComment',
data: { CommentText: $("#CommentText").val(),
Username: $("#Username").val() },
cache: false,
success: function (result) {
desc = result;
}
});
And then in your controller:
public string AddComment(string CommentText, string Username)
{
//your code here
}
Hope this will help you.
Related videos on Youtube
![user3265963](https://i.stack.imgur.com/pBFvc.jpg?s=256&g=1)
Author by
user3265963
Updated on June 04, 2022Comments
-
user3265963 about 2 years
Am having trouble getting multiple parameters with Ajax in MVC. I have two fields that require an input. Input field for Username and CommentText.
I am defining these parameters in the url section of the ajax. It is working fine when I only pass one parameter(works for both when tried separately), but as soon as I try both the latter parameter does not work.
Ajax function:
$(function () { $("#button").click(function () { $.ajax({ type: "GET", contentType: "application/json; charset=utf8", url: "Home/AddComment?CommentText=" + $("#CommentText").val() + "&Username=" + $("Username").val(), dataType: "json", success: function (Comment) { //some function }, error: function (xhr, err) { //some code } }); }); });
Any ideas? Should I maybe be passing the parameters through "data" instead?
Edit: *This is the controller that should catch these parameters.*
public JsonResult AddComment(string commentText, string username) { Comment c = new Comment() { CommentText = commentText, Username = username }; CommentRepository.Instance.AddComment(c); return Json(GetComments(), JsonRequestBehavior.AllowGet); }
-
PavloYou should pass them not via url but as a data
-
PavloAlso, you will get an error here
$("Username").val()
don't forget to add#
like$("#Username").val()
-
-
user3265963 over 10 yearscheck the update.. I have a controller that takes in these parameters