먼저 몇 가지 세부 사항을 묻는 페이지가 있고 그 아래 div에 부분 뷰가 반환됩니다.MVC Ajax가 부분 뷰를 반환하지만 표시되지 않습니다.
이 내 아약스 (나는 그것을 테스트하기 때문에 세부 따라 컨트롤러로 이동 및 전달되고있다)이다
public PartialViewResult FilterTransaction(string StartD, string EndD, string ItemName)
{
try
{
int productid = new ProductService.ProductsServiceClient().GetProductID(ItemName);
Product p = new ProductService.ProductsServiceClient().GetProduct(productid);
ViewBag.ItemNo = productid;
ViewBag.ItemName = p.Name;
ViewBag.AmmountP = p.Price;
int orderid = new OrderService.OrderServiceClient().GetOrderID(productid, User.Identity.Name);
Order o = new OrderService.OrderServiceClient().GetOrder(orderid);
ViewBag.DatePurchased = o.Date;
ViewBag.WarrantyExpiryDate = o.Date.AddYears(2);
DateTime fromd = Convert.ToDateTime(StartD);
DateTime todate = Convert.ToDateTime(EndD);
todate = todate.AddDays(1);
List<PrintViewFD> printv = new List<PrintViewFD>();
foreach (FaultDetail fs in new FaultService.FaultServiceClient().GetListOfFaultDetailsbetweenDATES(orderid, productid, fromd, todate))
{
PrintViewFD pvd = new PrintViewFD();
pvd.date = fs.Date.ToString();
pvd.details = fs.Details;
pvd.faultid = fs.FaultID;
FaultStatu fss = new FaultService.FaultServiceClient().GetStatus(fs.FaultStatusID);
pvd.status = fss.Status;
printv.Add(pvd);
}
ViewBag.FaultDetailsLIST = printv;
return PartialView("_filtertransactions");
}
catch
{
return PartialView("_filtertransactions");
}
}
:
<script type="text/javascript">
function Filter() {
var startd = $('#startdt').val();
var endd = $('#enddt').val();
var itemname = $("#Products option:selected").val();
var param = { StartD: startd, EndD: endd, ItemName: itemname };
$.ajax({
url: '@Url.Action("FilterTransaction")',
type: "POST",
datatype: "html",
UpdateTargetId: "divResult",
data: param,
error: function (xmlHttpRequest, errorText, thrownError) {
alert(xmlHttpRequest + "|" + errorText + "|" + thrownError);
},
success: function (data) {
$('divResult').html(result);
}
});
}
</script>
이것은 (메소드와 변수가 모두 제대로 처리) 컨트롤러입니다
함수를 디버깅했으며 컨트롤러 메서드와 부분 뷰를 모두 입력합니다. 유일한 문제는 뷰에 부분 뷰가 표시되지 않는다는 것입니다. 나는 그것이 아약스와 관련이 있다고 생각한다!
<div id="divResult">test</div>
'$ ('divResult')를'->'$ ('# divResult ')' –