我正在使用Nodejs和Express工作。作为这个领域的新手,我遇到了一个问题,我现在已经尝试修复几个小时了:
在.html文件中,我有一个包含隐藏输入元素和按钮的表单。隐藏输入元素的值为空,应该在表单发送之前设置(这应该只是模仿这个玩具示例中的“输入操作”)。我想用Ajax做到这一点。这是我的代码:
对于Ajax,我包括:
<script src="jquery.form.js"></script>
HTML:
<form id="myForm" action="/myAction" method="post" >
<input value="" type="hidden" name="myInputName" id="myHiddenInput">
<input type="button" value="Solve!" onclick="calculate()"/>
</form>
使用Javascript:
function calculate(){
var myString = "test";
document.getElementById('myHiddenInput').value = myString ;
console.log("before ajaxForm");
$('#myForm').ajaxForm(function(res){
console.log("middle ajaxForm");
success: alert(res.toString());
error: console.log("Something is wrong");;
});
console.log("after ajaxForm");
}
的NodeJS:
app.post('/myAction', function (req, res) {
console.log("Form arrived.");
res.end();
})
但是,我的代码似乎不起作用。
我的期望:
我得到了什么:
有人知道我可能做错了什么吗?一旦有东西到达服务器,如何访问字符串“text”,这是隐藏输入的值?
谢谢!
答案 0 :(得分:0)
试试:
$('#myForm').ajaxForm({
beforeSubmit: function(){console.log("middle ajaxForm")},
success: function(res){alert(res)},
error: function(){console.log("Something is wrong")}
});