Javascript 改变形式';方法';不';t工作,浏览器使';获取';要求
我正在使用jquery创建一个简单的CRUD应用程序,通过JSON连接到FLASK后端。JSON查询工作正常。 我使用的HTML表单将“new”和“edit”加倍,因此我更改了“action”属性和“method”,以反映它是创建新记录还是编辑现有记录 这是表格Javascript 改变形式';方法';不';t工作,浏览器使';获取';要求,javascript,jquery,Javascript,Jquery,我正在使用jquery创建一个简单的CRUD应用程序,通过JSON连接到FLASK后端。JSON查询工作正常。 我使用的HTML表单将“new”和“edit”加倍,因此我更改了“action”属性和“method”,以反映它是创建新记录还是编辑现有记录 这是表格 <div id="chardlg" class="easyui-dialog" title="Character" style="width:300px;padding:10px;" closed="true"> <f
<div id="chardlg" class="easyui-dialog" title="Character" style="width:300px;padding:10px;" closed="true">
<form id="cf" enctype="multipart/form-data" name="cf">
<table>
<tr>
<td>Name:</td>
<td><input name="name" class="easyui-textbox"></td>
</tr>
<tr>
<td>Short Name:</td>
<td><input name="short_name" class="easyui-textbox"></td>
</tr>
<tr>
<td>Description:</td>
<td><input name="description" class="easyui-textbox"></td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Submit"></td>
</tr>
</table>
</form>
进一步搞乱。。。
如果我在HTML ie中设置forms方法
<form id="cf" enctype="multipart/form-data" method='put' name="cf">
它仍然将其作为“获取”请求发送。唯一显式设置“get”的地方是在datagrid中,但是如果我删除该选项,datagrid默认为“POST”请求,并从FLASK后端获取400,因此将不会填充datagrid
似乎有什么东西正在覆盖/推翻“method”属性,因为其他所有内容都按预期运行。经过大量研究,发现HTML表单只支持GET和POST,不支持PUT和DELETE。当这是构建REST请求的推荐方法时,非常令人沮丧。唷,至少不是我的代码错了。你在哪里调用
newCharacter()
?请与我们分享你如何触发这些函数。为什么你要使用document.querySelector获取formI?我有一个列出所有字符的jquery数据网格。它通过REST检索这些内容,请参见上面的编辑。我使用document.querySelector作为jquery方法的替代方法,只是想看看这是否是jquery的问题。无论我使用哪种方法,我都会得到相同的结果。
$('#cg').datagrid({
singleSelect:'true',
url:charactersurl,
method:'get',
emptyMsg:'No Data available',
toolbar:[{
iconCls: 'icon-add',
handler: function(){newCharacter()}
},'-',{
iconCls: 'icon-edit',
handler: function(){editCharacter()}
},'-',{
iconCls: 'icon-remove',
handler: function(){alert('Remove')}
}],
columns:[[
{field:'name',title:'Name',width:100},
{field:'short_name',title:'Short Name',width:100},
{field:'description',title:'Description',width:120}
]]
});
<form id="cf" enctype="multipart/form-data" method='put' name="cf">