所以我的观点得到了一个模型。 我希望,如果模型的ID属性为-1,则让DDL选择默认值“[Select]”。
DDL:
@Html.DropDownListFor(cModel => cModel.QueueMonitorConfigTypeName, Enum.GetValues(typeof(BPM.Website.Models.PathType)).Cast<BPM.Website.Models.PathType>().Select(v => new SelectListItem
{
Text = v.ToString(),
Value = v.ToString()
}), "[Select]", new { id = "ddlConfigTypeName" })
和js:
<script type="text/javascript">
$(function () {
var model = @Model.QueueMonitorConfigurationsID
if (model = -1)
{
$('#ddlConfigTypeName').select("[Select]")
}
else{}
});
</script>
但由于某种原因,js的intellisense告诉我这是错误的。 当我尝试在if中进行比较时出现问题。 我试过'=','==','===',没有任何作用
它只是说语法错误。我想它与添加@Model
标签有一些关系,但无法解决它。
任何猜测?
由于
编辑,如果我改变它:
<script type="text/javascript">
$(function () {
if (@Model.QueueMonitorConfigurationsIDel == -1)
{
$('#ddlConfigTypeName').select("[Select]")
}
else{}
});
</script>
它仍然说语法错误在==
答案 0 :(得分:1)
它认为你在第一个
中做了一个任务(只有一个=)$(function () {
var model = @Model.QueueMonitorConfigurationsID
if (model = -1)
{
$('#ddlConfigTypeName').select("[Select]")
}
else{}
});
我复制了你的情况,这有效:
<script src="../../Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
var model = @Model.QueueMonitorConfigurationsID;
if (model == -1){
alert('got it');
}
else{
alert(model);
}
});
</script>
如果这仍然不适合您,您可以检查变量&#34; model&#34 ;?的值什么回来了?
答案 1 :(得分:0)
var model = @Model.QueueMonitorConfigurationsID
if (model = -1)
更改为if (model == -1)