Javascript textarea的值返回为空
我有一个包含文本区和提交按钮的HTML表单。和一个JS脚本,该脚本接受textarea的值 我面临的问题是,当我在textarea中键入文本并点击submit时,textarea值为空。但是,如果我将文本硬编码到文本区域,则返回硬编码值。如果我擦除硬编码值并删除硬编码值并键入我自己的值,则仍会返回硬编码值 HTML 注意上面的文本区域是如何预加载“type”的。这是返回的值。如果我将其保留为空,在表单中键入我自己的文本并点击submit,控制台日志将显示内容值为空 我也尝试过(使用textarea id) 我想问题在于波斯特。因为当我按enter键时,我输入的文本被替换为“type”(预加载的文本)Javascript textarea的值返回为空,javascript,jquery,html,forms,Javascript,Jquery,Html,Forms,我有一个包含文本区和提交按钮的HTML表单。和一个JS脚本,该脚本接受textarea的值 我面临的问题是,当我在textarea中键入文本并点击submit时,textarea值为空。但是,如果我将文本硬编码到文本区域,则返回硬编码值。如果我擦除硬编码值并删除硬编码值并键入我自己的值,则仍会返回硬编码值 HTML 注意上面的文本区域是如何预加载“type”的。这是返回的值。如果我将其保留为空,在表单中键入我自己的文本并点击submit,控制台日志将显示内容值为空 我也尝试过(使用textare
POST会干扰吗?我还可以如何检索该值?我不确定实际的问题,但在过去几天里我注意到了一些奇怪的事情
console.log()
在chrome中很少出现像这样的情况。可能是萤火虫吧?无论如何,将console.log()
替换为alert
,并从textarea
中删除默认值
更新小提琴:
这在chrome和firefox上似乎很管用。@Joe--
val()
会很管用。将事件
传递到你的点击处理程序并取消默认操作:$(“#提交”)。点击(函数(事件){event.preventDefault();…}
@tymeJV仍然存在相同的问题将输入类型更改为按钮
@tymeJV仍然存在相同的问题
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="js/jquery/jquery-1.9.1.min.js"></script>
<script src="contentForm.js"></script>
</head>
<body>
<form method="post" >
<textarea name ="editor" id="editBox" rows="5" cols="2">type</textarea>
<p><input type="submit" id="submit" value="Submit"></p>
</form>
</body>
</html>
function add() {
$("#submit").click(function() {
var message = "start js";
console.log(message);
var contents = $("textarea").val();
if(contents === undefined) {
console.log("contents undefined");
}
console.log(contents);
var item = {"id":"12", "content": contents};
var obj = JSON.stringify(item);
var obj2 = JSON.parse(obj);
console.log(obj2.id);
console.log(obj2.content);
});
}
$(document).ready(function () {
add();
});
var contents = $("#editBox").val();