我的剃须刀视图中有一个html文本框
<input type="text" id="txtComments" name="txtComments" placeholder="Enter your comments"
style="width: 500px; height: 50px;" />
点击进入我正在进行ajax jquery调用并保存数据。但我无法输入文本框。如果我将id="txtComments"
更改为其他可以键入的其他内容。
我做错了什么?
添加了我的脚本文件:
$("#txtComments").keypress(function (e) {
var comments = "";
e.preventDefault();
var code = e.keyCode ? e.keyCode : e.which;
if (code == 13) {
comments = $("#txtComments").val();
var request = $.ajax({
url: "/Home/SaveCommentsData",
type: "POST",
data: { 'CommentEntered': comments },
dataType: "json",
success: function (data, textStatus) {
if (textStatus) {
$('#enteredComments').append('<span>' + comments + '</span>');
alert("Comment Saved");
}
},
error: function (textstatus) {
alert(textstatus);
}
});
}
});
答案 0 :(得分:2)
那是因为您正在使用preventDefault()
来阻止事件的默认操作,在这种情况下输入。
$("#txtComments").keypress(function (e) {
var comments = "";
// e.preventDefault();
您可以将语句移至if语句:
$("#txtComments").keypress(function (e) {
var comments = "";
if (e.which == 13) {
e.preventDefault();
comments = this.value;
答案 1 :(得分:1)
这是因为你正在使用每个按键的防止默认值
当你按下回车
时,你只需要这样做if (code == 13) {
e.preventDefault()
//...
}