ASP.NET MVC 4是用于Web应用程序的ASP.NET Model-View-Controller平台的第四个主要版本。
我是asp.net的新手,我的视图由一些表单值组成,并且有2个按钮保存和取消。在按钮“保存”上单击“我想将表单值发送到控制器方法”。 当我
我无法理解 asp.net mvc 模型绑定器的工作原理。 楷模 公开课 详情 { 公共 Guid Id { 获取;放; } 公共字符串标题{get;放; } } 公开课大师...
如何将连接字符串中的“Provider Name”添加到Context文件中?
我正在使用 Entity Framework 5 代码优先方法。这是我的上下文文件: 使用 IMS.Domain.Inventory; 使用 IMS.Domain.Security; 使用 IMS.Domain.StoredProcedures; 使用系统; 使用系统。
我有“是/否”复选框,我希望用户在其中仅选择一个。我有一个 java 脚本,但它运行不正常,没有错误。 Html.CheckBoxFor(m => m.HaveYouApplied, htmlAttributes: new { id = "c...
这是我在 RouteConfig.cs 中的路线 路线.MapRoute( 名称:“计算机搜索”, 网址:“情商”, 默认值:new { controller = "Computer", action = "Search", I...
在 MVC4 表单(基于另一个字段的值)中动态启用/禁用特定字段的非侵入式验证需要什么? 这个用例是我有一个联系人......
如何在 asp.net mvc razor 中使用 jquery 将 html 表数据传递给控制器?
标记: ... 标记: <div class="form-group"> <table class="table table-bordered" id="tblSavingColl" style="width: 97%; margin-left:1.5%;"> <thead> <tr> <th>Client Code</th> <th>Name</th> <th>Bal</th> <th>Due</th> <th>Received <br/>G S</th> <th>Adj Y/N</th> <th><input type="checkbox" id="selectall" /> All</th> <th>GS Adj Amt</th> <th>Bal</th> <th>Due</th> <th>Received SS</th> <th>Adj Y/N</th> <th><input type="checkbox" id="selectAll2" /> All</th> <th>SS Adj Amt</th> <th>Bal</th> <th>Deposit</th> <th>Withdraw</th> <th>Rcvd</th> <th>Prst</th> </tr> </thead> <tbody> </tbody> </table> </div> <div class="form-group"> <input type="button" class="button" id="btnSaveSaving" value="Save Saving Details" /> </div> 加载表格行的 Javascript: <script type="text/javascript"> $(document).ready(function(){ var savAcList = []; // to store ac infos $.ajax({ type: 'GET', url: '@Url.Action("GetSavingCollSheet", "CollectionSheetTranscation")', dataType: 'json', data: { adDate: $('#adDate').val(), centerCode: $('#centerCode').val(), collnSheetNo: $('#collnSheetNo').val() }, success: function (data) { $.each(data, function (i, dets) { var $row = $('<tr>' + '<td>' + dets.clientNo + '</td>' + '<td>' + dets.clientName + '</td>' + '<td>' + dets.MSBal + '</td>' + '<td>' + dets.MSDue + '</td>' + '<td><input type="text" value = "' + dets.MSRec + '" class="chkBox" /></td>' + '<td class="GSCol">' + msadjCheckBox + '</td>' + '<td>' + msadjCode + '</td>' + '<td>' + msadjAmount + '</td>' + '<td>' + dets.PSBal + '</td>' + '<td>' + dets.PSRec + '</td>' + '<td><input type="text" value = "' + dets.PSRec + '" class="chkBox" /></td>' + '<td class="SSCol">' + psadjCheckBox + '</td>' + '<td>' + psadjCode + '</td>' + '<td>' + psadjAmount + '</td>' + '<td>' + dets.OSBal + '</td>' + '<td>' + dets.OSDep + '</td>' + '<td>' + dets.OSWithdraw + '</td>' + '<td>' + recFlag + '</td>' + '<td>' + prFlag + '</td>' ); $('#tblSavingColl > tbody').append($row); savAcList.push(dets.SavAcCode); totMSDue += Number(dets.MSRec); totPSDue += Number(dets.PSRec); totOSDep += Number(dets.OSDep); totOSWith += Number(dets.OSWithdraw); totUFDue += Number(dets.UFRec); psTransfer += Number(dets.PSAdjAmt); msTransfer += Number(dets.MSAdjAmt); if (dets.PresentFlag == "Y") totPresent++; }); var totalCollectionAmt = (totPSDue + totMSDue + totOSDep + totUFDue + 0 - (totOSWith + psTransfer + msTransfer)); $('#txttotalpensav').val(totPSDue); $('#txttotaloptsav').val(totOSDep); $('#txttotalwithdraw').val(totOSWith); $('#txtpresent').val(totPresent); $('#txttotalmonthsav').val(totMSDue); $('#txttotunitfund').val(totUFDue); $('#txttotalcolln').val(totalCollectionAmt); $('#txtwelfarefundamt').val("0"); $('#txttotpentrans').val(psTransfer); $('#txttotmontrans').val(msTransfer); $('#txttotaltransfer').val(Number(psTransfer) + Number(msTransfer)); //alert(savAcList[0]); }, error: function () { alert("Error"); } }) }); </script> 问题一 现在加载表格后,我们在第 6 列和第 12 列中有复选框。我需要将复选框事件处理为 选中第 6 列中的复选框时,我必须在第 7 列的下拉列表中加载一个值以及第 5 列到第 8 列的值。 类似地,当第 12 列的复选框被选中时,我必须在第 13 列的下拉列表中加载一个值,以及第 11 列到第 12 列的值。 对于要在下拉列表中加载的值,我之前在 jquery 中创建了一个名为“savAcList”的数组,并在使用数据加载表时获取了该值。 我找不到执行上述操作的复选框列。我所做的如下所示,但下面的 javascript 做了一些错误步骤,比如我需要选中第 6 列中的第一个复选框,然后只选中第 12 列复选框。我取消选中该复选框时,如果未选中第 12 列复选框,它将清除第 6 列的值,反之亦然。 我做的javascript是: var meroIndex = 0; var meroRow = 999; $('#tblSavingColl').on('click', 'tr', function (e) { //var myIndex = $('#tblSavingColl tr input[type="checkbox"]:checked').parent().index(); // get the index of the checkbox i.e. colIndex var myIndex = $('#tblSavingColl tr input[type="checkbox"]').parent().index(); // get the index of the checkbox i.e. colIndex var myRow = $(this).index(); // get the rowIndex if (meroIndex == myIndex && myRow == meroRow) myIndex = 12; if (meroIndex == myIndex && myRow != meroRow) myIndex = myIndex; //alert("My Index " + myIndex + " MeroIndex = " + meroIndex); meroIndex = myIndex; meroRow = myRow; var myTIndex = myIndex + 2; var mySelIndex = myIndex + 1; var ReceivedGS = $(this).find('td:nth-child(' + (Number(myIndex) - 1) + ') input').val(); var myAcCode = savAcList[Number(myRow)]; if ($(e.target).is('input[type=checkbox]')) { var option = document.createElement("option"); // create a new element option [this here is created for a new option to be appended in the dropdownlist] option.value = myAcCode; // associate the option element with value attribute option.text = myAcCode; // associate the option element with text attribute if ($(e.target).is(':checked')) // if the checkbox is checked { $(this).find('td:nth-child(' + myTIndex + ') input').val(ReceivedGS); // sets the textbox to the value in "ReceivedGS" variable $(this).find('td:nth-child(' + mySelIndex + ') select').removeAttr("disabled"); // removes the disabled property of the dropdownlist $(this).find('td:nth-child(' + mySelIndex + ') select').append(option); // append the option variable to the dropdownlist $(this).find('td:nth-child(' + mySelIndex + ') select>option:eq(1)').attr('selected', true); // selects the newly created option of the dropdownlist } else // if the checkbox is not checked { $(this).find('td:nth-child(' + myTIndex + ') input').val("0"); // sets the textbox value to 0 $(this).find('td:nth-child(' + mySelIndex + ') select').find("option[value='" + myAcCode + "']").remove(); // removes the appended item from dropdownlist $(this).find('td:nth-child(' + mySelIndex + ') select').prop("disabled", "disabled"); // applies the disabled property to the dropdownlist } } }); 我需要上述帮助。 以及当我要保存表格数据时。我确实将所有行和列存储在一个数组中并想传递给控制器。这就是我所做的一切: $('#btnSaveSaving').click(function () { var myTableArray = []; $('#tblSavingColl tbody tr').each(function () { var arrayOfThisRow = []; var tableData = $(this).find('td'); if (tableData.length > 0) { tableData.each(function () { if ($(this).find("input[type=text]").length) { var myText = $(this).find("input[type=text]").val(); arrayOfThisRow.push(myText); } else if ($(this).find("input[type=checkbox]").length) { var myText = $(this).find("input[type=checkbox]"); if ((myText).prop('checked') == true) arrayOfThisRow.push('Y'); else arrayOfThisRow.push('N'); } else if ($(this).find("select").length) { var myText = $(this).find("select :selected").text(); arrayOfThisRow.push(myText); } else arrayOfThisRow.push($(this).text()); }); myTableArray.push(arrayOfThisRow); } }); var params = []; /*for (var i = 0; i < myTableArray.length; i++) { var dataValue = myTableArray[i].split(','); params = { collSheetNo: $('#collnSheetNo').val(), clientNo: dataValue[0], clientCode: dataValue[0], clientName: dataValue[1], UFAcNo: dataValue[6], UFBal: dataValue[2], UFDue: dataValue[3], UFRec: dataValue[4], MSAcNo: dataValue[6], MSBal: "a", MSDue: "a", MSRec: "a", MSAdjFlag: "a", MSAdjACNo: "a", MSAdjCode: "a", MSAdjAmt: "a", PSAcNo: "a", PSBal: "a", PSDue: "a", PSRec: "a", PSAdjFlag: "a", PSAdjAcNo: "a", PSAdjCode: "a", PSAdjAmt: "a", OSAcNo: "a", OSBal: "a", OSDep: "a", OSWithdraw: "a", ReceivedFlag: "a", PresentFlag: "a" }; }*/ $.ajax({ type: 'POST', url: '@Url.Action("SaveSavingColln", "CollectionSheetTranscation")', dataType: 'json', contentType: 'application/json; charset=utf-8', data: JSON.stringify({ savingColln: params}), success: function (result) { alert(result); }, error: function () { alert("Error while saving Saving Collection Sheet"); } }); }); 注释行填充 params 变量。但事实上它不会在 之后执行 var dataValue = myTableArray[i].split(','); 问题2 所以,我在将数据发送到控制器时也遇到了问题。 好吧,我什至尝试了以下方式将数据传递给控制器。 data: JSON.stringify({ savingColln: myTableArray}), 我在controller上打了一个断点,知道数据有没有传到controller。它实际上到达了控制器和 myTableArray 的长度,但没有获取任何值。我的控制器如下: public JsonResult SaveSavingColln(List<SavingCollectionModel> savingColln) { string result = iCollService.SavingCollnSave(savingColln); return Json(result, JsonRequestBehavior.AllowGet); } 请确保您已创建正确的 json 数据以发送服务器端。 请试试这个 var str = JSON.stringify(myTableArray); str = str.substring(0, str.length - 1).substring(1, str.length); 然后将这个var str作为数据传递给服务器,如下所示 data:'{"savingColln":'+str+'"}', 希望这能解决问题 我通过执行以下操作获得了将表数据传递给控制器的解决方案: $('#btnSaving').click(function(){ var myTableArray = []; $('#tblSavingColl tr:not(:first)').each(function () { var tds = $(this).find('td'); var myDets= { collSheetNo: $('#').val(), clientNo: $(tds[0]).html() } myTableArray.push(myDets); }) $.ajax({ type: 'POST', url: '@Url.Action("SaveSavingColln", "CollectionSheetTranscation")', dataType: 'json', contentType: 'application/json; charset=utf-8', data: JSON.stringify(myTableArray), success: function (result) { alert(result); }, error: function () { alert("Error while saving Saving Collection Sheet"); } }); });
如何在 Kendo Grid 的 AJAX Create 中发送附加数据
我可以使用这样的模式将附加数据发送到 Kendo 网格的 AJAX 读取操作...... @(Html.Kendo().Grid() .DataSource(数据源=>数据源 .Ajax() ...
我希望能够调用将 Kendo 网格滚动到选定行的函数。我已经尝试了一些方法,但都没有用, 例如我试过这个: var grid = $("#Grid").d...
找不到文件“c:\windows\system32\inetsrv\download (2).jpg”。在服务器上发布时
我有一个 asp.net web 表单 web 应用程序,我将上传的图像以二进制格式保存在数据库中,然后为了加载图像,我将二进制数据转换为 base64 字符串并加载它,在我的 l...
head 中的 Angular 12 布局内容从 @symbol 渲染到 body 中
我的应用程序从 Angular10 迁移到 Angular12,我们正在使用 MVC 应用程序进行角度引导。 我的示例布局文件是 @using ProjectName.UI.Models @model 模特名 我的应用程序从 Angular10 迁移到 Angular12,我们正在使用 MVC 应用程序进行角度引导。 我的示例布局文件是 @using ProjectName.UI.Models @model ModelName <!DOCTYPE html> <html> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Vatica Health</title> <link rel="shortcut icon" href="favicon.ico" /> @Styles.Render("~/Content/css") @Scripts.Render("~/bundles/modernizr") <script>document.write('<base href="' + document.location + '" />');</script> </head> <body> <app-root></app-root> </body> </html> Angular.Json文件配置为 "targets": { "build": { "builder": "@angular-devkit/build-angular:browser", "options": { "outputPath": "dist", "deployUrl": "dist/",`your text` "index": "Views/Shared/_LayoutTemplate.cshtml", "main": "src/main.ts",`your text` "polyfills": "src/polyfills.ts", "tsConfig": "src/tsconfig.app.json", "assets": [ "src/favicon.ico", "src/assets" ], "styles": [ ], "scripts": [ ], "allowedCommonJsDependencies": [ "primeng", ], "aot": false, "vendorChunk": true, "extractLicenses": false, "buildOptimizer": false, "sourceMap": true, "optimization": false, "namedChunks": true }, "configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, "namedChunks": false, "extractLicenses": true, "vendorChunk": false } }, "defaultConfiguration": "" }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", "options": { "browserTarget": "well365:build" }, "configurations": { "production": { "browserTarget": "well365:build:production" } } }, "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { "browserTarget": "well365:build" } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", "polyfills": "src/polyfills.ts", "tsConfig": "src/tsconfig.spec.json", "karmaConfig": "src/karma.conf.js", "styles": [ "src/styles.css" ], "scripts": [], "assets": [ "src/favicon.ico", "src/assets" ], "codeCoverage": true } }, "lint": { "builder": "@angular-devkit/build-angular:tslint", "options": { "tsConfig": [ "src/tsconfig.app.json", "src/tsconfig.spec.json" ], "exclude": [ "**/node_modules/**" ] } } } 在开发模式下构建项目时,会适当生成布局 html 文件,但在生产模式下生成时,所有头部内容都会在主体内移动。 发现问题是由于@符号而发生的,所以如果将模型导入等行移动到头部内容的某处,那么头部标签将在那里结束,而身体标签将开始。 不知道为什么会这样。
我正在使用实体框架使用 asp net mvc 5 构建我的第一个应用程序,我需要通过 admininstartor 配置(添加新用户 - 编辑用户 - 删除用户 - 重置用户密码)
Linq Exception: Function can only be invoked from linq to entities
我有一个 StudentReceipts 表,它将 ReceiptNo 存储为字符串(001,002,003,..,099,..)。 我想获取最后的收据详细信息,以便为下一次交易增加收据。 这是...
从 4.6.1 迁移到 4.7.2 .NET 框架后出现运行时错误
我有一个在 .NET Framework 4.6.1 上运行良好的 MVC Web 应用程序。我需要将目标框架更改为 4.7.1 或更高版本,所以我选择了 4.7.2。 我只是改变了目标框架 dropd ...
所以我的项目需求发生了变化,现在我想我需要构建自己的动作过滤器。 所以,这是我当前的登录控制器: 公共类登录控制器:控制器 { // 获取:登录
在 ASP.NET Web API 中使用角色授权属性不起作用
我有 ASP.NET MVC4 应用程序项目。我还通过创建 ApiContoller 将 WebApi 添加到我的项目中。我有用于 MVC 的表单身份验证和用于 Web API 的基本身份验证 (Thinktecture)。 我不...
新的 ASP.NET MVC 4 项目中使用的 _references.js 文件是什么?
我使用 SignalR (WebSockets) 开发了一个 ASP.Net Web 应用程序。我将它安装在 Windows 10 家用计算机的 IIS 上。由于 SignalR 在服务器和客户端之间使用持久连接,我 ...
如何在 ASP.NET MVC (.Net Framework 4.5) 中完成 Keycloak 注销
将 Keycloak 与我的 .Net Framework 4.5 MVC 项目集成。由于 .Net 没有直接的 Keycloak 客户端,因此我为此使用“Owin.Security.Keycloak-3”NuGet。我可以从
我正在计划一个项目来开发一个使用 MVC4、EF5 和 Web Api 的应用程序。请任何人建议我们如何在不同层设计项目。使用 MVC4 的 Web 和使用 EF5/Repos 的数据层...