在datatable上使用row.add(...),当我导致draw()时,我发现使用ajax调用刷新,所以我从未看到新行,因为它从数据库重新加载数据。
底层UX逻辑如下: 表包含可通过输入编辑的数据。输入在更改中验证,如果行内的所有输入都包含有效数据,请将新数据提交到后端,然后在服务器报告成功后从数据库重新加载。 用户想要添加新行。无法生成有效数据且不允许空值,因此会创建一个新的空行,并且只要所有输入都有有效数据,就会以相同的方式将其提交给后端。
问题:如何在不触发ajax.reload()的情况下向datatable添加行?
答案 0 :(得分:2)
我找到了另一种解决方案:
当从服务器向ajax调用传递数据时,我在末尾results.Add(new AjaxTableObject());
附加一个空对象,这会导致表始终显示一行额外的空数据。面向用户的javascript逻辑保持不变:只要行的输入有效,它就会将数据提交给服务器。
我不打算将此标记为正确的答案,因为它没有回答发布的原始问题,但我会留在这里,因为它可能对其他试图做同样事情的人有用。 / p>
如果有人知道原始问题的答案,请发布,它对其他应用程序有用。