下面的代码块会在缺失的SyntaxError
上触发;
。以下是Firebug输出的屏幕截图:
<script type="text/javascript">
$(document).ready(function () {
$("#SelectedMCO").change(function () {
var scheme = @Request.Url.Scheme.ToString();
var authority = @Request.Url.Authority.ToString();
var applicationPath = @Request.ApplicationPath.ToString();
var url = scheme + "://" + authority + applicationPath +"mytest/" + $("#Selectedoption").val();
$.getJSON(url, function (data) {
$("#Selectedsub").empty();
$.each(data, function(idx, obj) {
$('#SelectedSub').append('<option value="' + obj.EntityNumber +'">' + obj.Name + '</option>');
});
});
});
});
</script>
答案 0 :(得分:2)
您只需要将Razor变量括在引号中:
<script type="text/javascript">
$(document).ready(function () {
$("#SelectedMCO").change(function () {
var scheme = '@Request.Url.Scheme.ToString()';
var authority = '@Request.Url.Authority.ToString()';
var applicationPath = '@Request.ApplicationPath.ToString()';
var url = scheme + "://" + authority + applicationPath
+"mytest/" + $("#Selectedoption").val();
$.getJSON(url, function (data) {
$("#Selectedsub").empty();
$.each(data, function(idx, obj) {
$('#SelectedSub').append('<option value="' +
obj.EntityNumber +'">' + obj.Name + '</option>');
});
});
});
});
</script>
这将确保JavaScript解释器将您的变量解释为字符串。