为什么"Microsoft JScript运行时错误:应为对象“”;
Why "Microsoft JScript runtime error: Object expected"?
我使用jquery大约1天了,现在正做噩梦。我已经花了半天时间试图消除这个错误。我在"谷歌搜索"了这个错误(对不起,Bing!)后做了一些阅读,发现这些错误大多是由于jquery文件没有正确加载造成的。好吧…这开始给我指明了正确的方向,但我仍然不明白为什么它的路径不正确。我的意思是,我按照人们说的那样做——我会把.js文件拖到我的设计器中,它会打印出正确的路径,但仍然会显示错误。
这是我的编辑器模板中的确切代码(有错误):
@model bool
@{
string status = "Active";
string buttonValue = "Deactivate";
string hiddenValue = "true";
if (!ViewData.Model)
{
status = "Inactive";
buttonValue = "Activate";
hiddenValue = "false";
}
}
<div style="width:100px; float:left;">
<img id = "AD_Img" src = "/Content/themes/base/images/icon_@(status).png" alt = @(status) />
<label for = "AD_Img" id = "AD_Label" >@(status)</label>
</div>
<div style="width:100px; float:left;">
<input type="button" id = "AD_Button" value = @(buttonValue) style = "width:100px" onclick = "ChangeStatus()" />
<input id = "AcntStatus" type = "hidden" name = "AcntStatus" value = @(hiddenValue) />
</div>
在同一个cshtml文件中,脚本是这样的:
<script type="text/javascript" src="/Scripts/jquery-1.5.1.min.js">
function ChangeStatus()
{
var ButtonVal = $("#AD_Button").val();
alert(ButtonVal);
if (ButtonVal == "Deactivate")
{
var stat = "Inactive";
var buttonVal = "Activate";
var HiddenValue = "false";
}
else if (ButtonVal == "Activate")
{
stat = "Active";
buttonVal = "Deactivate";
HiddenValue = "true";
}
$("#AD_Img").attr({src: "/Content/themes/base/images/icon_"+stat+".png", alt: stat});
$("#AD_Label").html(stat);
$("#AD_Button").val(buttonVal);
$("#AcntStatus").val(HiddenValue);
}
</script>
调试器在以下行的输入元素的ChangeStatus函数上停止:
<input type="button" id = "AD_Button" value = @(buttonValue) style = "width:100px" onclick = "ChangeStatus()" />
我试着在我的函数代码中使用这个来调试它
function ChangeStatus()
{
var ButtonVal = document.getElementById("AD_Button").value;
alert(ButtonVal);
}
它工作正常,它返回了我正在寻找的字符串,没有那个错误,但为什么?我的代码出了什么问题?请帮我弄清楚。
这:
$("#AD_Img").attr(src: "../../../Content/themes/base/images/icon_"+stat+".png", alt: stat);
强制出现语法错误。必须是:
$("#AD_Img").attr({src: "../../../Content/themes/base/images/icon_"+stat+".png", alt: stat});
编辑:
另外看看你的<script>
,你不能混合外部JS和内部JS。
此:
<script type="text/javascript" src="../../../Scripts/jquery-1.5.1.min.js">
//your code
</script>
必须拆分为
<script type="text/javascript" src="../../../Scripts/jquery-1.5.1.min.js"></script>
<script type="text/javascript">
//your code
</script>
相关文章:
- JavaScript错误:Microsoft JScript运行时错误:应为对象
- Microsoft JScript运行时错误:无法获取属性'的值;样式':对象为null或未定义
- 如何从 MVC4 链接调用 Javascript 方法(错误 JavaScript 运行时错误:对象不支持此操作)
- 运行时错误:对象不支持属性或方法
- JavaScript 错误(Microsoft JScript 运行时错误:对象预期)
- MVC4和日期选择器:“;0x800a01b6-JavaScript运行时错误:对象没有't支持属性或方法
- Microsoft JScript运行时错误:对象没有't支持属性或方法'html'
- IE 错误 .JavaScript 运行时错误:对象不支持属性或方法“preventDefault”
- Microsoft JScript 运行时错误:对象预期异常
- JavaScript 运行时错误:对象不支持属性或方法“包含”
- Microsoft JScript 运行时错误:无法获取属性“value”的值:对象为 null 或未定义
- 填充隐藏字段Microsoft JScript 运行时错误:对象不支持此属性或方法
- IE11 运行时错误: 429 ActiveX 组件无法创建对象
- JavaScript运行时错误:对象没有't支持属性或方法'在'上;
- Microsoft JScript运行时错误:无法获取属性'的值;innerHTML':对象为null或
- Kendo TabStrip,获取错误-切换选项卡时应为microsoft jscript运行时错误对象
- Microsoft JScript运行时错误:对象没有't支持属性或方法'__定义Getter__
- 获取js错误:Microsoft JScript运行时错误:对象没有'不支持此属性或方法
- 0x800a01b6-JavaScript运行时错误:对象没有't支持属性或方法'appendTo
- 为什么"Microsoft JScript运行时错误:应为对象“”;