확인 모든 이상한 하나 여기에 .... 난 4 일 전에와 오늘 날짜를 포함하는 드롭 다운 목록과 전망을Viewbag 연준 DropdownFor - 액션 선택한 후에 삭제합니다 속성은 파람을 가지고
...
Index (Action)가 DateTime에 대해 null로 설정되어 있으면 현재 날짜가 이미 선택된 DropDownList가 나타납니다 ... 좋습니다!
HTML 소스 URL \ 컨트롤러 \ 지수
<select class="form-control" id="Date" name="Date" onchange="Change_Date(this)"
<option value="23/10/2017">23/10/2017</option>
<option value="24/10/2017">24/10/2017</option>
<option value="25/10/2017">25/10/2017</option>
<option value="26/10/2017">26/10/2017</option>
<option selected="selected" value="27/10/2017">27/10/2017</option>
</select>
지수 (액션)이이 똑같은 과정을 거친 내가 물리적으로 선정 = 진정한 속성을 볼 수 있지만, 날짜 시간으로 실행되면 ViewBag.DateList에서 ... 드롭 다운에는 선택된 옵션이없고 처음으로 되돌아갑니다.
HTML 소스 URL \ 컨트롤러 \ 지수? 날짜 = 2017년 10월 26일
<select class="form-control" id="Date" name="Date" onchange="Change_Date(this)"
<option value="23/10/2017">23/10/2017</option>
<option value="24/10/2017">24/10/2017</option>
<option value="25/10/2017">25/10/2017</option>
<option value="26/10/2017">26/10/2017</option>
<option value="27/10/2017">27/10/2017</option>
</select>
내가 JS를 우회 URL에 직접 날짜를 넣어 시도했지만 운이 아니도록했다. ..
가지는? 날짜 = URL에 날짜이 옵션 요소에서 선택한 속성을 제거하는 이유를 이해할 수없는...
그냥 둘 난에 걸린 될 ViewBag.DateList 내에 Selected = True 속성이 있지만, 매개 변수가 작업에 전달 될 때 예상대로 렌더링되지 않습니다. URL에보기
@Html.DropDownList("Date", (IEnumerable<SelectListItem>)ViewBag.DateList,
new { @class = "form-control", @onchange="Change_Date(this)" })
방법
public ActionResult Index(DateTime? date)
{
if (date.HasValue == false)
{
date = DateTime.Now.Date;
}
List<SelectListItem> Dates = new List<SelectListItem>();
for (int i = -4; i < 1; i++)
{
string date_display = DateTime.Now.Date.AddDays(i).ToShortDateString();
Dates.Add(new SelectListItem { Text = date_display, Value =date_display});
}
foreach (SelectListItem item in Dates)
{
if (item.Value == date.ToShortDateString())
item.Selected = true;
}
ViewBag.DateList = Dates;
}
JS
function Change_Date(val)
{
var value = $('#Date').val();
value = value.split("/").reverse().join("-");
var url = "/Controller/Index?date=" + value;
window.location.href = url;
}
아주 좋은 ... 감사 방법의 매개 변수의 이름, 또는 일치하지 않도록 드롭 다운리스트에서 이름 중 하나를 변경 대답. ModelState가 URL에서 가져온 것을 몰랐습니다. –