jquery - 将多个复选框值保存到 sql 数据库
问题描述
我有一个 html 表单,其中还有复选框。复选框的值通过 Web Api 来自 SQL 数据库。
$(document).ready(function () {
var $MaterialName = $('#materiallist');
function addMaterials(material) {
$MaterialName.append('<input type="checkbox" >' + material.MaterialName + ' </input>');
}
<div class="form-group">
<label for="material" class="col-xs-3 control-label header">Käytetyt materiaalit</label>
<div class="col-xs-7">
<div class="checkbox" id="materiallist"></div>
</div>
</div>
我想将这些检查值与该表单中的其他输入值一起保存到另一个 SQL 数据库(名为 Form)。
我还没有找到所有其他输入字段也需要保存的解决方案,只有复选框和按钮的解决方案。此外,我的值来自数据库,而不是“硬编码”选项。
我试过这个:
function getCheckedMaterials() {
var materialArray = [];
$("#materiallist input:checked").each(function () {
materialArray.push($(this).val());
});
var selected;
selected = materialArray.join(',');
alert("You have selected " + selected);
}
这不能按我的需要工作,因为我无法获得这些值。
#tallenna
当我按下按钮时,来自其他输入字段的所有这些值都会进入表单数据库。我需要将检查的值保存MaterialName
为文本。
$('#tallenna').click(function () {
var form = {
FormFiller: $FormFiller.val(),
CustomerContact: $CustomerContact.val(),
ReadyToDate: $ReadyToDate.val(),
Instructions: $Instructions.val(),
Amount: $Amount.val(),
PcsAmount: $PcsAmount.val(),
ChargeFull: $ChargeFull.val(),
ChargeByPcs: $ChargeByPcs.val(),
FreightCost: $FreightCost.val(),
CustomerName: $CustomerName.val(),
WorkName: $WorkName.val(),
MaterialName: getCheckedMaterials // ????
};
解决方案
您似乎在询问如何将数据从函数返回到属性。因此,在函数中添加一条return
语句,并通过()
在函数名称末尾添加来从属性调用它,如下所示:
function getCheckedMaterials() {
var materialArray = $("#materiallist input:checked").map(function () {
return this.value;
}).get();
return materialArray.join(',');
}
$('#tallenna').click(function (e) {
e.preventDefault();
var form = {
// other properties...
MaterialName: getCheckedMaterials()
};
// send 'form' in an AJAX request here...
});
我建议materialArray
从函数中返回纯数组,并在您的 AJAX 请求中将其发送到您的 WebAPI 端点。这样,您可以将其模型绑定到 a string[]
or IEnumerable<string>
,从而使其更易于使用。
推荐阅读
- rdf4j - RDF4j v3.0.0 导出图,其中没有推断三元组
- excel - 将 SUM 与动态行号一起使用
- c# - 我的 winform 应用程序应该识别连接到我的机器的 USB 和蓝牙具有相同的事件
- flutter - Flutter中dio的全局配置(拦截器)
- android - 使用 DataBinding 进行电子邮件验证
- apache-camel - Camel:从队列到 HTTP 的路由
- javascript - 如何在简单的 javascript 客户端应用程序的 karma/mocha 测试中更改 window.location
- zebra-printers - ZPL 设置标签尺寸预留打印
- python - 熊猫条件分组
- javascript - 模糊three.js反射器对象