Я пытаюсь показать идентификатор карты Стамбула в списке выбора и показать информацию, связанную с этим идентификатором, во входном html, но это не работает
"это страница Test.cshtml"
@model Transportation.Vm.`VmIstanbul`
@section Scrypt{
<script src="https://code.jquery.com/jquery-1.10.2.min.js"></script>
}
<div class="jumbotron">
<script type="text/javascript">
$(document).ready(function () {
$.ajax({
type: "GET",
url: "/Customer/Test",
data: "{}",
success: function (data) {
var s = '<option value="-1">Please Select a Card id</option>';
for (var i = 0; i < data.length; i++) {
s += '<option value="' + data[i].Balance + '">' + data[i].IstanbulCardId + '</option>';
}
$("#departmentsDropdown").html(s);
}
});
});
function getValue() {
var myVal = $("#departmentsDropdown").val();
$("#show").val(myVal);
}
</script>
</div>
<form id="myForm" asp-controller="Customer" asp-action="Test">
<label for="departmentsDropdown"><b>Card</b></label>
<select class="form-control" onchange="getValue()" id="departmentsDropdown" name="departmentsDropdown"></select><br />
<input type="text" value="" id="show" />
</form>
это Контроллер клиентов
public IActionResult Test () {
var data = from als in ctx.TbIstanbulCards select new { als.IstanbulCardId, als.Balance };
return Json(data.ToList(), System.Web.Mvc.JsonRequestBehavior.AllowGet);
}
это класс ВМ
public class VmIstanbul : TbIstanbulCard
{
public double TransportNumber { get; set; }
public double NumberOfStops { get; set; }
public string Vehicles { get; set; }
public double AvailableBalance { get; set; }
public double DeductedAmount { get; set; }
}
Это модель Class of Istanbul Card
public partial class TbIstanbulCard
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int IstanbulCardId { get; set; }
public decimal? Balance { get; set; }
public int CustomerId { get; set; }
public virtual TbCustomer Customer { get; set; }
}
Customer/Test
. Ваше представление должно войти в метод вроде:public IActionResult Test(){return View();}
, чтобы вернуть представление. Затем вашему ajax в вашем представлении необходимо изменить URL-адрес запроса и изменить метод запроса, например:public IActionResult AjaxTest() { var data = from als in ctx.TbIstanbulCards select new { als.IstanbulCardId, als.Balance }; return Json(data.ToList()); }
. 21.01.2021