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

如何编写Ajax请求调用控制器实现按钮点击设值为true

解决步骤

先补全你的Ajax代码,明确几个关键参数就能对接控制器方法:

客户端JavaScript代码

$(document).on('click', '.add-button', function(e) {
    // 阻止按钮默认提交行为(如果是表单内的按钮)
    e.preventDefault();
    
    $.ajax({
        url: '/你的控制器名称/Begin', // 替换成实际的控制器方法路由地址
        type: 'POST',
        contentType: 'application/json', // 告知服务器请求数据为JSON格式
        data: JSON.stringify({ targetField: true }), // 把要设置的字段及值传给控制器,替换成你实际的字段名
        success: function(response) {
            // 请求成功后的操作,比如提示用户
            console.log('值已成功设为true');
        },
        error: function(xhr, status, error) {
            // 请求失败时的错误处理
            console.error('请求出错:', error);
        }
    });
});

服务器端控制器方法示例

如果你用ASP.NET MVC:

public class 你的控制器名称 : Controller
{
    [HttpPost] // 必须添加该特性,指定只接收POST请求
    public IActionResult Begin(YourDataModel model) // YourDataModel是包含目标字段的模型类
    {
        // 将目标字段设为true
        model.targetField = true;
        
        // 这里可添加业务逻辑,比如保存到数据库
        // _dbContext.SaveChanges();
        
        // 返回响应给客户端
        return Json(new { success = true, message = "操作完成" });
    }

    // 若无需模型,也可直接接收参数:
    // [HttpPost]
    // public IActionResult Begin(bool targetField)
    // {
    //     // 执行设置逻辑
    //     return Json(new { success = true });
    // }
}

如果你用Node.js Express:

// 在路由文件中配置
app.post('/begin', (req, res) => {
    // 从请求体获取参数
    const { targetField } = req.body;
    
    // 将目标值设为true,比如修改变量或数据库记录
    yourDataStore.targetField = true;
    
    // 返回响应
    res.json({ success: true, message: "值已更新为true" });
});

关键提示

  • url必须和控制器方法的路由完全匹配,否则会找不到对应接口
  • 若不需要传递额外参数,data可传JSON.stringify({}),仅触发控制器内的设置逻辑
  • 控制器方法必须明确接收POST请求,否则会请求失败

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 15:53:21