2017-12-14 28 views
0

C#을 사용하여 SQL에서 채워진 드롭 다운 상자가 있습니다. 사용자가 드롭 다운 상자에서 항목을 선택하면 선택한 항목을 기반으로 SQL 쿼리를 실행하고 SQL의 결과 집합으로 다른 입력 필드를 채워야합니다.ASP.NET Core v2 및 Razorpages를 사용하여 Dropdown onChange 이벤트에서 SQL 데이터 가져 오기

고객 목록으로 생각하면 고객을 선택할 때 나중에 입력란이 고객에 대한 기본값으로 채워집니다 (주소, 도시 등). 나중에 사용자가 변경할 수 있습니다.

첫 번째 생각은 드롭 다운 onchange 이벤트에서 ajax 호출을 사용했지만 어디에서 MSSQL 데이터를 가져올 지 모릅니다. URL에서 SQL에서 데이터를 검색 할 수 있습니까? 또는 C#으로 onchange 이벤트에 드롭 다운을 바인딩하고 C#에서 스크립트 블록에 쿼리 데이터를 추가 할 수 있습니까?

어떻게 해결할 수 있습니까? 내가 ASP.NET 코어를 사용하고

감사

토마스

답변

1

당신은 아약스를 사용해야합니다 enter image description here

Razorpages

와 V2.
var dataToPost = {customer: "custumerValue", additionalData: "something"}; 
$.ajax("{path to controller}/GetData", { 
    method: "POST", 
    dataType: "json", 
    contentType: "application/json; charset=utf-8", 
    data: JSON.stringify(dataToPost) 
}).done(function (data) { 
    //set properties 
    console.log(data.value1); 
    console.log(data.value2); 
}).fail(function() { 
    //error 
}); 

및 컨트롤러에

함수 작성 : 이 같은 Ajax 호출을 작성

public virtual JsonNetResult GetData(string customer, string additionalData) 
{ 
    // Get data 

    return new JsonNetResult() 
    { 
     Data = new 
     { 
      value1 = "something", 
      value2 = "something" 
     } 
    }; 
} 

를 컨트롤러의 이름은 경우, 컨트롤러에 올바른 경로를 지정해야합니다 CustomerController 만해야 고객을 URL에 삽입하십시오. 또한 함수의 이름과 매개 변수는 ajax 호출에 사용 된 이름과 일치해야합니다.

희망이 도움이됩니다.