无法检索文本区域的值
我构建了一个基本的 form
,其中包含某些元素,其中之一是 textarea
元素。 整个表单包含在 div
中,当用户单击提交按钮时,表单将被隐藏,并且应显示 textarea
的值以供查看。
我正在使用 jQuery 检索文本区域中的数据,但也尝试过不使用它,但无济于事。 我尝试过使用 .text()
、.val()
和 .html()
。尽管 .val()
应该有效,但这些都不起作用。
这是我当前正在使用的脚本:
$(function(){
var ptext = $('#post_text');
$('#submit').click(function() {
data = ptext.val();
alert(data);
$('#form_container').fadeOut('slow', function(){
$('#status').html(data);
return;
});
$('#status').fadeIn('slow');
return true;
});
});
...以及表单中的文本区域
<div id="post_box"><textarea id="post_text" name="text" class="full"></textarea></div>
附加信息:我在文本区域上使用 CKEditor,但我认为它不会导致任何此类问题。还在 IE8 和 Chrome 中进行了测试。
有什么想法吗?
I've constructed a basic form
in which there are certain elements, one of which is a textarea
element.
The whole form is enclosed in a div
, and when the user clicks the submit button the form is hidden and the value of the textarea
should be shown for review.
I am using jQuery to retrieve the data in the textarea, but have also tried without it but to no avail.
I have tried using .text()
, .val()
and .html()
. None of which work, even though .val()
should be.
Here's the script I'm currently using:
$(function(){
var ptext = $('#post_text');
$('#submit').click(function() {
data = ptext.val();
alert(data);
$('#form_container').fadeOut('slow', function(){
$('#status').html(data);
return;
});
$('#status').fadeIn('slow');
return true;
});
});
...and the textarea from the form
<div id="post_box"><textarea id="post_text" name="text" class="full"></textarea></div>
Additonal info: I'm using CKEditor on the textarea, but I do not think it would cause any problems like this. Have also tested in IE8 and Chrome.
Any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
当然这是 CKEditor 造成的。 textarea 不再是一个textarea,它已被其他东西取代,可能是一个iframe。由于文本区域不再存在,因此您无法使用
val
方法获取其文本。使用
getData
方法从编辑器获取文本:Of course it's CKEditor that causes this. The textarea is not a textarea at all any more, it has been replaced by something else, probably an iframe. As the textarea doesn't exist any more, you can't use the
val
method to get it's text.Use the
getData
method to get the text from the editor:一定是因为 CKEditor,因为您的从文本区域抓取文本的代码是有效的< /a>.
It has to be because of CKEditor, because your code for grabbing text from textarea is valid.