Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 表为空时烧瓶模式不工作_Javascript_Python_Html_Css_Flask - Fatal编程技术网

Javascript 表为空时烧瓶模式不工作

Javascript 表为空时烧瓶模式不工作,javascript,python,html,css,flask,Javascript,Python,Html,Css,Flask,我正在努力让这个模式工作。我有一个简单的flask web应用程序,它有一个SQLite数据库和一些JavaScript代码,可以使用模式向表中添加新行 只要桌子上不再有争吵,一切都很好。如果表是空的,我将无法再打开模式。如果至少有一行,则模态工作正常,并向右打开 我在这里上传了代码: 我已尝试调试错误,并收到以下错误消息: Uncaught TypeError: Cannot read property 'style' of null at HTMLButtonElement.btn.<

我正在努力让这个模式工作。我有一个简单的flask web应用程序,它有一个SQLite数据库和一些JavaScript代码,可以使用模式向表中添加新行

只要桌子上不再有争吵,一切都很好。如果表是空的,我将无法再打开模式。如果至少有一行,则模态工作正常,并向右打开

我在这里上传了代码:

我已尝试调试错误,并收到以下错误消息:

Uncaught TypeError: Cannot read property 'style' of null at HTMLButtonElement.btn.<computed>.onclick

代码中需要注意的几点

您不需要条件语句
{%for row in rows%}
为您添加的每个项目创建一个新模式。使用您拥有的
{%for row in rows%}
条件,当表为空时,没有可选择的模态类,因此模态为空

您需要做的是删除当前模式的条件语句,从表单中获取数据,然后将新数据添加到sqlite中。您可以使用“关闭”按钮将模式显示设置为“无”,然后使用“模式”按钮将显示更改为“块”。您使用的是flask,因此我假设您已经拥有从表单获取数据并将其添加到sqlite数据库的代码。使用javascript只需显示和隐藏模式


另外,对于代码中只存在一次的类,您不需要querySelector all,请改用querySelector

非常感谢您的帮助,删除{%for row in rows%}就成功了。
modal.style.display = "block";