¿Cómo puedo pasar un valor ingresado en un cuadro de texto a un PartialViewResult?

Estoy creando una aplicación MVC donde el usuario puede agregar artículos a su carrito. También pueden realizar pagos parciales en ciertos artículos, así que tengo un TextBox para que especifiquen cuánto quieren pagar. Estoy usando un Ajax ActionLink para manejar las acciones Actualizar / Agregar al carrito de manera que pueda incrementar el conteo del carrito sin actualizar la pantalla con una vista parcial. Mi problema es que no puedo encontrar una manera de pasar o acceder al valor ingresado en el TextBox a mi función PartialViewResult.

Aquí está mi modelo …

Public Class StudentSchoolFee_Transaction Public Property SchoolFeeId As Integer Public Property Title As String Public Property Price As Decimal Public Property AmountDue As Decimal  Public Property Amount As Decimal Public Property Description As String Public Property AcceptPartialPayment As Boolean Public Property StudentId As Integer Public Property TransactionId As Integer End Class Public Class AssignedFeesModel Public Property StudentId As Integer Public Property StudentNumber As Long Public Property SiteId As String Public Property SelectedSchoolFeeId As Integer Public Property SelectedAcceptPartial As Boolean Public Property SelectedAmountDue As Decimal Public Property SelectedAmount As Decimal Public Property SelectedTransactionId As Integer Public Property AssignedFeesCol As System.Collections.Generic.List(Of StudentSchoolFee_Transaction) Public Sub New() End Sub Public Sub New(ByVal _Deliver As EMS.Grid.Deliver, ByVal _StudentId As String) Dim SelectedStudent As New Library.Student(_Deliver, _StudentId) AssignedFeesCol = New System.Collections.Generic.List(Of StudentSchoolFee_Transaction) StudentId = SelectedStudent.Id StudentNumber = SelectedStudent.StudentNumber SiteId = SelectedStudent.SiteId 'Load AssignedFeesCol End Sub End Class 

Aquí están mi carga inicial ActionResult y mi AddAssignedFee PartialViewResult para actualizar el conteo de carros …

  Function AssignedFees(ByVal StudentId As String, Optional ByVal ErrorMessage As String = "") As ActionResult Dim oDeliver As New EMS.Grid.Deliver oDeliver.UDLNameOrConnString = ConfigurationManager.ConnectionStrings("DefaultConnection").ConnectionString Dim m As New AssignedFeesModel(oDeliver, StudentId) Dim stu As New Library.MealHistoryDB.Student(oDeliver, m.StudentNumber, UserSession.GetSession.DistrictId) Return View(m) End Function Public Function AddAssignedFee(ByVal StudentId As Integer, ByVal SchoolFeeId As Integer, ByVal SelectedAmount As Decimal) As PartialViewResult Dim oDeliver As New EMS.Grid.Deliver oDeliver.UDLNameOrConnString = ConfigurationManager.ConnectionStrings("DefaultConnection").ConnectionString With New Library.Ecommerce.SchoolFee(oDeliver, SchoolFeeId) .AddToCart(oDeliver, UserSession.GetSession.ParentId, StudentId, SelectedAmount) End With Return PartialView("_CartButton") ', New Global.MSM.mobile.CartButton()) End Function 

Y aquí están mis enlaces de acción Ajax, el primero es para agregar un artículo sin cantidad especificada y funciona. La segunda es para actualizar un artículo que puede tener una cantidad de pago parcial y no puedo encontrar una manera de pasar la cantidad a PartialViewResult.

 @Ajax.ActionLink("Add", "AddAssignedFee", "Parent", New With {.StudentId = currentItem.StudentId, .SchoolFeeId = currentItem.SchoolFeeId, .SelectedAmount = currentItem.Amount}, New AjaxOptions() With {.HttpMethod = "POST", .InsertionMode = InsertionMode.Replace, .UpdateTargetId = "btnCartContainer"}, New With {.class = "button"}) @Ajax.ActionLink("Update", "AddAssignedFee", "Parent", New With {.StudentId = currentItem.StudentId, .SchoolFeeId = currentItem.SchoolFeeId, .SelectedAmount = currentItem.Amount}, New AjaxOptions() With {.HttpMethod = "POST", .InsertionMode = InsertionMode.Replace, .UpdateTargetId = "btnCartContainer"}, New With {.class = "button"}) 

También he intentado “.SelectedAmount = Model.SelectedAmount” para el enlace de actualización, pero parece que no puedo encontrar una manera de pasar la cantidad ingresada a PartialViewResult.

¿Alguna sugerencia?

¡Gracias! Lindsay

podrías intentar hacer una llamada ajax

 $('.Link').on('click', function(){ $.ajax({ url: "@(Url.Action("AddAssignedFee", "Controller")", type: "POST", data: { textValue: $('.PaymentAmount').val(), data2: 'data2' } cache: false, async: true, success: function (result) { $(".Content").html(result); } }); }); 

Esperemos que esto ayude