是否可以用Ajax提交文本区域数据?
Is it possible to submit textarea data with Ajax?
我正在尝试提交输入数据,但我想提交<textarea>
而不是<input>
的数据。我的原始代码:
<form action="/index/output" method="POST">
<input type="text" name="text_box" id="t">
</form>
<script>
$('#t').keyup(function(){
$.ajax({
url : '/index/output',
data : {
text_box : $('input:text').val()
},
success : function(html) {
$('#result').html(html);
}
})
})
</script>
<div id="result"> </div>
我把<input>
改成了<textarea>
<form action="/index/output" method="POST">
<textarea name="text_box" id="t"> </text>
</form>
但它不能很好地工作…
我的ajax代码有问题吗?
代替
$('input:text').val()
使用$('textarea').val()
或者,更好的是,选择它的id:
$('#t').val()
问题是您的选择器input:text
意味着"输入文本类型的元素",而您的<textarea>
不是<input>
。
只需更改选择器以实际匹配元素。
$('textarea')
您的问题与ajax代码无关。相反,jQuery-Selector不针对textarea元素,而只针对输入元素。要解决这个问题,您可以告诉ajax调用提交整个表单或修复选择器。选择器看起来像这样:
$('textarea').val()
或者像这样
$('#t').val();
可以。因为您已经将ID定义为t
,所以您可以使用这样的ID访问它:
var textData = $('#t').val();
发送到任何你想发送的地方
问题是你的选择器,
$('input:text') =>表示选择文本框
用代替
$('textarea') => means select textarea
和不使用val()方法,因为textarea包含大量字符,所以使用html()方法从textarea元素获取值
和also
contentType: "text/plain; charset=utf-8",
如果你使用的是asp.net的方法,contenttype是非常导入的ajax张贴url
相关文章:
- onkeyup无法动态创建多个文本区域
- 具有所有样式的文本正在复制到可编辑文本区域
- 在文本区域POST后解码JSON
- 在文本区域中使用jQuery.text()保持换行符
- ng在下拉列表和文本区域提交
- 将文本插入光标所在的文本区域
- 离开页面导航后保留文本区域内容
- Javascript-在文本区域中断,但不在段落中中断
- 当选择值x时,Javascript需要在正确的位置显示文本区域,从而循环通过具有选择选项的表单
- 测试文本区域中的特定文本格式
- 文本编辑后,append函数不适用于文本区域
- 如何在ReactJs中链接下拉列表和文本区域
- I'我试图在文本区域中进行特定的输入,调用特定的javascript函数,但没有成功;不起作用
- 使用JSON文件中的变量(字符串)填充文本区域
- JavaScript-如果以前不存在文本,如何从文本区域删除新行
- 如何在php中创建一个函数,该函数与文本区域一起工作,通过输入类似[color:red]的内容来打印具有等效颜色的文本
- 如何为动态创建的文本区域中输入的值更新ng模型
- 延迟高亮显示文本区域中的文本
- 将字母添加到文本区域的末尾
- TinyMCE在新添加的文本区域