누구든지 나를 도울 수 있는지 궁금합니다. 나는 자바 스크립트가 처음이다. JavaScript에서 배열에 특정 값을 넣는 목록이 있습니다. 내가 뭘 하려는지 사용자가 @ Html.DropDownList 값을 선택한 다음 해당 배열에서 ID를 찾아 다른 다른 속성에 액세스 할 수 있습니다. 문제가있는 부분은 배열에서 이러한 값을 검색하는 것입니다. 자바 스크립트는 드롭 다운 목록과 동일한 페이지 내에 있습니다. 필요한 경우 자세한 내용을 제공 할 수 있습니다.자바 스크립트 배열 내의 값 검색
DropDownList로
@Html.DropDownList("StockCode", new SelectList(ViewBag.StockCodeList, "Value", "Text"),
new
{
@class = "form-control selectpicker ",
data_show_subtext = "true",
data_live_search = "true",
id = "StockCode",
name = "StockCode"
})
전역에는 var (목록 임) ViewBag에서 배열을 만들기. 내가 StockCode, 설명, QtyInStock, QtyOnOrder 등의 값을 얻기 위해 노력하고
<script>
function FetchCall() {
var SelectBox = $("#StockCode").val();
var Values = selectWhere(Stockarray,'StockCode', SelectBox);
for (var i=0; i<Values.length; i++)
{
var test = Values[i].value;
var param_value = i +'='+test;
}
alert(param_value.join(', '));
}
function selectWhere(data, propertyName, tofind) {
for (var i = 0; i < data.length; i++) {
if (data[i][propertyName] == tofind) return data[i];
}
return (null);
}
</script>
정확한 값을 얻으려고 노력에서 문제가 있습니다 경우 아래
<script>
Stockarray = @Html.Raw(
Json.Encode(
((List<GetProducts_Result>)ViewBag.AllStock).Select(stock => new
{
StockCode = stock.StockCode,
Description = stock.Description,
QtyInStock = stock.QtyInStock,
QtyOnOrder = stock.QtyOnOrder,
QtyAllocated = stock.QtyAllocated,
QtyLastStockTake = stock.QtyLastStockTake,
StoredPrice = stock.StoredPrice,
})
)
);
</script>
이다
업데이트 또한 시도했습니다
GetStockItemsFromDB()가 제품 목록을 반환하는 컨트롤러
ViewBag.Products = JsonConvert.SerializeObject(GetStockItemsFromDB().Take(2));
보기
var model = '@Html.Raw(Json.Encode(ViewBag.Products))';
alert(model);
이 나를 내용을 볼 수 있지만, 나는이 솔루션이 함께 끝났다
selectList의 (@ ViewBag.StockCodeList ... 당신은 당신의 실제에 @를해야합니까 코드? – nocturns2
그래,하지만 난 성공하지 못하게 면도기를 피하려고 했어. –