我正试图为服务器端数据表向MVC控制器发布一个额外的自定义值。似乎无论我做什么,我都不能发布我想要的值,它总是在我的视图模型中返回null。代码如下:
$(document).ready(function () {
window.searchValue;
function updateSearchValuesBeforeSend() {
window.searchValue = $("#searchValue").val();
Table.fnFilter(this.value);
}
$("#submitButton").on('click', function (event) {
updateSearchValuesBeforeSend();
});
function getAString() {
return $("#searchValue").val();
}
var Table = $('#work-order-table').dataTable({
processing: true,
serverSide: true,
scrollX: true,
scrollResize: true,
scrollY: 600,
scrollCollapse: true,
bStateSave: true,
fnStateSave: function (oSettings, oData) {
localStorage.setItem('work-order-table', JSON.stringify(oData));
},
fnStateLoad: function (oSettings) {
return JSON.parse(localStorage.getItem('work-order-table'));
},
ajax: {
url: '@Url.Action("FilterList")',
method: 'POST',
data: {
'search_value': window.searchValue
},
字符串
如果我把window.searchValue替换为一个类似'something'的字符串,那么它就不会出现任何问题。我尝试 AJAX 调用中直接执行$(“#searchValue”).val(),但不起作用,尝试执行${window.searchValue}
,并创建一个返回$(“#searchValue”).val()的函数,而不是将其存储在变量中。当我在调用Table.fnFilter(this.value)之前执行console.log(window.searchValue)时,它会打印输入中的正确值,但在我的模型中仍然显示为null。
编辑:让我重申一下,我正在从输入中查找值。在按下搜索按钮后,我知道第一 AJAX 调用在页面加载时将为null。
1条答案
按热度按时间ki0zmccv1#
我能够通过直接将我想要的属性添加到数据表传递给我的控制器的JavaScript对象来解决这个问题。
字符串