Diese Frage könnte wiederholt werden, aber ich habe ein Problem. Ich habe eine Dropdown-Liste und einen Suchknopf auf meiner Seite. Hier binden Sie die Ansicht mit dem Modell in der Dropdown-Liste des Änderungsereignisses ein. Und wenn Sie auf "Suchen" klicken, wird der ausgewählte Wert in der Dropdown-Liste bezüglich der Liste der Datensätze in der Teilansicht angezeigt. Dies alles richtig als Gebrüll getan:Load Teilansicht auf Schaltfläche klicken
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<ApricaCRMEvent.Models.CRM.DatabaseEntities.CRM_Doctor_Request>" %>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
MDLNoDDLIndex
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<script src="../../Scripts/jquery.js" type="text/javascript"></script>
<script src="../../Scripts/jquery-migrate-1.0.0.js" type="text/javascript"></script>
<script type="text/javascript">
//script for binding drop down list value from view to model
$("#viewlist").hide();
function TestFun()
{
var mdlno = $("#ddlMDLNo").val();
var txtmdlno = document.getElementById("Request_For_Id");
txtmdlno.value = mdlno;
//alert(txtmdlno.value);
$("#viewlist").hide();
}
var mdlno = $("#ddlMDLNo").val();
function Datalist(mdlno) {
$("#viewlist").show();
$.ajax({
url: "/Search/MDLNoDataList", //url or controller with action
type: "POST",
data: mdlno,
dataType: "html",
success: function (data) {
$("#viewlist").html(data); //target div id
},
error: function() {
alert("No Projects Found");
$("#viewlist").html('there is error while submit');
}
});
}
//$(function() { $("#btnclick").click(function() { $("#viewlist").load('/Search/MDLNoDataList') }); });
//script for loading partial view into div tag "viewlist"
</script>
<div>
<h2>Search by MDLNo</h2>
<% using (Html.BeginForm())
{ %>
<%: Html.ValidationSummary(true, "Profile Updation was unsuccessful. Please correct the errors and try again.") %>
Select MDLno
<%= Html.DropDownList("ddlMDLNo", ViewData["MDLno"] as SelectList, "--Select One--", new { onchange = "TestFun()" })%>
<%: Html.HiddenFor(model => model.Request_For_Id) %>
<input type="submit" value="search" name="SearchMDLNo" id="btnclick" onclick ="Datalist(a)"/>
<div id="viewlist"><%Html.RenderAction("MDLNoDataList"); %> </div> <%--partial view should be loaded here.--%>
<% } %>
</div>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HeadContent" runat="server">
</asp:Content>
Alles funktioniert einwandfrei, aber .. Teilansicht von div-Tags angezeigt wird, bevor sie auf Suchtaste klicken. Ich möchte, dass .. Die Teilansicht Last, wenn i
für die Aktivierung der Schaltfläche ich diesen Code versucht haben:
$("#btnclick").click(function() { $("#viewlist").load('/Search/MDLNoDataList.ascx') });
Und ich habe auch versucht, .show() und .Hide(), aber Problem mit das ist ... Immer wenn ich auf die Schaltfläche klicke, wird die ganze Seite aktualisiert, so dass das Laden der Teilansicht nicht korrekt ausgeführt wird.
Controller:
public ActionResult MDLNoDDLIndex()
{
ViewData["MDLno"] = new SelectList(CRMSearchReportDL.getAllMDLno(), "Request_For_Id", "Request_For_Id");
return View();
}
[HttpPost]
public ActionResult MDLNoDDLIndex(CRM_Doctor_Request model)
{
ViewData["MDLno"] = new SelectList(CRMSearchReportDL.getAllMDLno(), "Request_For_Id", "Request_For_Id");
//mdlnoObj = SearchMDLNoDL.getMDLData(model.Request_For_Id);
return View();
}
public ActionResult MDLNoDataList()
{
List<CRM_Doctor_Request> drlist = new List<CRM_Doctor_Request>();
return PartialView(drlist);
}
[HttpPost]
public ActionResult MDLNoDataList(CRM_Doctor_Request model)
{
return PartialView(CRMSearchReportDL.getMDLNoWiseDetails(model.Request_For_Id));
}
Ich versuchte auf beiden Wegen .. Nach Ihrem Vorschlag. Aber wenn ich auf die Suchschaltfläche klicke, wird nichts im Div-Tag angezeigt. –
Können Sie Controller-Methodencodes hinzufügen? –
ya sure, Siehe Ich habe Controller-Code hinzugefügt. –