我有mvc4网页在那里我有一个@Html.TextBox()
外部JavaScript不工作,而内部不
@Html.TextBox("searchString", null, new { id = "searchingForProject" })
该文本框有keyup
监听器,将启动项目的AJAX搜索,并更新如果视图结果是成功的
var timeoutReference;
var timeoutforloading;
$(function() {
$("#searchingForProject").keyup(function() {
timeoutReference = setTimeout(function() {
timeoutforloading = setTimeout(function() {
$("#imageWebGridLoad").show();
$("#gridcontent").hide();
}, 250);
var value = $("#searchingForProject").val();
$.ajax({
url: '@Url.Action("Index", "Project")',
contentType: 'application/html; charset=utf-8',
type: "GET",
dataType: 'html',
data: { searchString: value },
}).success(function (result) {
$('projects').html(result);
clearTimeout(timeoutforloading);
});
}, 750);
});
});
的问题是,这个功能工作得很好,如果它被放置在内部<script>
之内,但如果它被放置在一个外部JavaScript文件,它不会给我任何结果。
我知道它调用该函数,因为$("#imageWebGridLoad").show();
将在0.25秒后开始旋转。
在我的Ajax调用中是错误的,还是不可能在像这样的外部js文件中执行它?
将@ Url.Action(“Index”,“Project”)放在外部JavaScript文件中时,它是如何工作的? :) –