我使用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>
调试器在以下行的input元素的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);
}
它工作正常,它返回我正在寻找的确切字符串没有该错误,但为什么?我的代码出了什么问题? 请帮我解决这个问题。
答案 0 :(得分:3)
此:
$("#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>