我試圖更新select
列表,這取決於另一個select
中的值。在調用服務器時。有沒有辦法做到這一點沒有JSON。我不介意在網站上做一個完整的Postback
,但更喜歡另一種解決方案。通過cshtml填充selectList
我使用csHTML和jQuery。
代碼:
<form action="" method="post">
<select name="SelectProductGroup" id="SelectProductGroup">
<option value="0" disabled selected>
select group
</option>
@{
foreach (ProductGroup vg in productGroupList)
{
<option value="@vg.id">
@vg.name
</option>
}
}
</select>
<select name="UpdateProduct" id="UpdateProduct">
<option value="0" disabled selected>
select product
</option>
</select>
<input type="submit" name="btn" value="updateProduct" />
</form>
<script>
$().ready(function() {
$('#SelectProductGroup').on('change', function() {
var options = {
@{
int temp_ID = 0;
if(Request["SelectProductGroup"] != null)
{
temp_ID = int.Parse(Request["SelectProductGroup"]);
}
int counter = 0;
List<Product> productList = Product.getListBy_ProductGroup(temp_ID, connection);
string result = "";
foreach(Product v in productList)
{
result += "val" + v.id + " : " + v.name;
if(counter < productList.Count())
{
result += ",";
}
}
<text>
@result
</text>
}
};
$.each(options, function (val, text) {
$('UpdateProduct').append(
$('<option></option>').val(val).html(text)
);
});
});
});
</script>
JSON是對子級很好的解決方案。只是似乎無法讓我的頭靠近它。因此,即時通訊正在尋找JSON解決方案的替代方案^^
getProductAsHTML的外觀如何? – 2013-04-10 14:30:19
.load()將正好插入頁面返回到第二個選擇內容的內容,所以它應該是一個.cshtml,它圍繞一個或類似的東西。否
或,只是列表