美好的一天:)
目前我使用的是JQuery 1.9.1.js,用于使用JSON搜索记录。
我可以在本地获取搜索列表,但是当我尝试发布到Windows Server 2008和IIS 7时,我无法获得预期的结果,因为它抛出一个错误,指出“event.returnValue is不推荐。请改用标准的event.preventDefault()。“
和
“GET http:/ localhost:AAA / User / FindGWCLoginUsers?strSearch = suresh 500(内部服务器错误)”
根据以下链接: event.returnValue is deprecated. Please use the standard event.preventDefault() instead
我尝试下载jquery-1.11.js,然后发布到服务器中,但我仍然遇到同样的错误。
但我从解决方案中排除了jquery-1.9.1.js,因为它在很多地方引用。
所以需要你的建议来纠正这个错误,我是否需要用最新的jquery-1.11.js文件替换所有jquery-1.9.1.js引用并发布。
提前谢谢你:)
找到以下代码供您参考:
调用.cshtml
$("#btnSearch").click(function () {
if ($("#txtSearch").val() == '') {
alert("Search Box must have search value");
$("#txtSearch").val('');
$("#lblNoEmployee").hide();
$("#tblResult tbody tr").each(function () {
this.parentNode.removeChild(this);
});
$("#tblResult").hide();
$("#divScollable").hide();
$("#sdialog").width(searchBoxWith);
$("#sdialog").height(searchBoxHeigh);
// $("#sdialog").width('214');
// $("#sdialog").height('154');
}
else {
$("#tblResult tbody tr").each(function () {
this.parentNode.removeChild(this);
});
$.getJSON(
'@Url.Content("~/SecUser/FindGWCLoginUsers")',
{
siteId: $("Select#tbl_UserProfile_Site").val(),
strSearch: $("#txtSearch").val()
},
function (employeeRecord) {
var empCollections = employeeRecord;
var items = "";
$.each(employeeRecord,
function (i, empCollections) {
$("#tblResult").find('tbody')
.append($('<tr>')
.append($('<td>')
.addClass('tdSelect')
.attr('id',
empCollections.EMPLOYEE_ID + "_" +
empCollections.EMPLOYEE_NAME + "_" +
empCollections.EMPLOYEE_EMAIL + "_" +
empCollections.LOCATION + "_" +
empCollections.LOCATION_CODE + "_" +
empCollections.DEPTID + "_" +
empCollections.DEPARTMENT_NAME + "_" +
empCollections.EMPLOYEE_EXTENSION + "_"
)
.text('Select')
)
.append($('<td>')
.text(empCollections.EMPLOYEE_ID)
)
.append($('<td>')
.text(empCollections.EMPLOYEE_NAME)
)
.append($('<td>')
.text(empCollections.DEPARTMENT_NAME)
)
);
});
var rowCount = $('#tblResult tr').length;
if (rowCount > 1) {
$("#divScollable").show();
$("#tblResult").show();
$("#lblNoEmployee").hide();
//var tmpWidth = $("#tblResult").width();
$("#sdialog").width('450');
$("#sdialog").height('290');
$(".tdSelect").click(function (e) {
var btnId = ($(this).attr('id'));
var strArray = btnId.split("_");
//clear all the text
$("#UserID").val('');
$("#UserName").val('');
$("#EmailAddress").val('');
$("#LOCATION").val('');
$("#DEPTID").val('');
$("#DEPARTMENT_NAME").val('');
$("#EMPLOYEE_EXTENSION").val('');
//rebind all new values
$("#UserID").val(strArray[0].toString());
$("#UserName").val(strArray[1].toString());
$("#EmailAddress").val(strArray[2].toString());
$("#LOCATION").val(strArray[3].toString());
$("#LOCATION_CODE").val(strArray[4].toString());
$("#DEPTID").val(strArray[5].toString());
$("#DEPARTMENT_NAME").val(strArray[6].toString());
$("#EMPLOYEE_EXTENSION").val(strArray[7].toString());
$("#tblResult tbody tr").each(function () {
this.parentNode.removeChild(this);
});
$('#mask').hide();
$('.window').hide();
$("#tbl_UserProfile_Site").show();
$("WDMEmployee").show();
$("#tbl_UserProfile_RoleId").show();
$("#tbl_UserProfile_ActiveFlag").show();
$("#sdialog").width('214');
$("#sdialog").height(searchBoxHeigh);
checkUserIfExists(strArray[0].toString());
});
}
else {
$("#tblResult").hide();
$("#lblNoEmployee").show();
$("#tblResult").hide();
$("#divScollable").hide();
$("#sdialog").width(searchBoxWith);
// $("#sdialog").width('214');
$("#sdialog").height('180');
}
});
}
});
控制器:
public ActionResult FindGWCLoginUsers(string strSearch = "")
{
try
{
GWCLOGINEntities db = new GWCLOGINEntities();
var result = (
from aa in db.VW_ALL_EMPLOYEE
where aa.EMPLOYEE_ID.Contains(strSearch)
|| aa.EMPLOYEE_NAME.Contains(strSearch)
select aa
).Take(15);
return Json(result, JsonRequestBehavior.AllowGet);
//return
// Json(result.Any() ? result.AsEnumerable().Cast<LU_EEN_DETAILS>().ToList() : null
// , JsonRequestBehavior.AllowGet);
}
catch (Exception ex)
{
throw ex;
}
}
答案 0 :(得分:2)
关于jQuery的event.returnValue事情:它只是一个警告,但你可能想要很快解决这个问题。
您链接到(event.returnValue is deprecated. Please use the standard event.preventDefault() instead)的Stack Overflow问题有很好的答案。此警告并不重要,但它可以指示您将来会破坏此警告。您应该浏览代码库并将对当前版本jQuery的所有引用更改为1.x的最新版本。您还可以考虑为您的jQuery实例使用非特定于版本的文件名(例如jquery.min.js
而不是jquery-1.10.2.min.js
),以便您可以通过替换相同的文件进行升级(而不必更改路径) /引用其他地方)。
听起来你有第二个问题,错误:
GET http:/localhost:AAA/User/FindGWCLoginUsers?strSearch=suresh 500 (Internal Server Error)
...意味着您在参考的任何后端服务方面存在一些问题。但是,500可能是任何东西,您需要检查服务器日志以了解正在发生的事情。