You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C# MVC应用CRUD更新功能实现与JS资源加载问题咨询

混合内容报错修复

导致编辑按钮无响应的核心原因是jQuery库被浏览器安全策略拦截,修复方法如下:

  • 将视图中两个外部脚本的引用地址从HTTP协议改为HTTPS协议,适配当前站点的HTTPS环境,修复后脚本可正常加载,点击事件即可生效
  • 补充隐藏的productId列:当前视图未渲染productId字段到DOM,JS中读取.productId的逻辑会返回空值,需要在表格的每行新增<td class="productId" style="display:none"><span>@item.productId</span></td>
  • 修正AJAX请求地址:后端更新接口为/Product/UpdatePrice,当前代码中AJAX的url参数填成了Index接口,调整为正确的接口地址即可正常提交更新请求
JavaScript代码优化点
  • 缩小事件委托范围:将事件绑定从body改为表格容器$("#tblProducts"),减少事件冒泡的不必要损耗,提升响应速度
  • 修正错误的class命名:当前Product Name带空格的class会被识别为两个独立类,导致选择器失效,改为product-name这类短横线分隔的规范命名
  • 补充取消按钮逻辑:现有代码未实现取消编辑的功能,新增点击取消时,将输入框值还原为修改前的span内容,再切换按钮和输入框的显隐状态
  • 增加输入合法性限制:将价格输入框的type改为number,设置min="0"属性,避免用户输入负数、非数字等无效值
  • 完善AJAX回调逻辑:新增success和error回调,更新成功后给用户明确提示,更新失败时回滚页面上的价格显示,避免页面数据和数据库数据不一致
  • 简化JSON传参逻辑:不需要手动拼接JSON字符串,直接给AJAX的data参数传入JS对象即可,避免手动拼接出现语法错误
商品价格更新的其他实现方案
  • 独立编辑页方案:点击编辑按钮跳转至单独的商品编辑页面,通过表单提交完成更新,无需依赖JavaScript,兼容性最强,适合编辑字段多的场景
  • 模态弹窗方案:点击编辑按钮弹出模态框展示商品信息,用户修改完成后在弹窗内提交更新,页面更整洁,用户操作路径清晰
  • 服务端提交方案:不使用AJAX,修改后直接提交表单整页刷新,实现逻辑最简单,适合对无刷新体验没有要求的小型项目

内容的提问来源于stack exchange,提问作者user10691080

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 07:54:05