1

为什么这不起作用?这里的input类型是text

var name = $("input[name='Event[name]']").serializeArray();
name = name[0].value;

var description = $("input[name='Event[description]']").serializeArray();
description = description[0].value; 

当我想从 a 中获取时textarea,它不起作用。

4

5 回答 5

2

这应该有效:

var name = $("input[name='Event[name]']").val();

var description = $("input[name='Event[description]']").val();

让 jQuery 处理value.

.val() 方法主要用于获取输入、选择和文本区域等表单元素的值。

于 2013-08-16T12:04:49.627 回答
0

将您的代码替换.val().text()

于 2013-08-16T12:03:37.563 回答
0

value 不是 textarea 的属性。Textarea 是具有内容的节点。对 textContent 使用 JQuery 属性。

于 2013-08-16T12:04:35.297 回答
0

value没有属性的文本区域。使用$("input[name='Event[description]']").val()以来jQuery 将所有类型的输入元素(输入、选择、复选框和文本区域)的所有值折叠到此函数调用中。

这意味着您应该始终使用.val()来获取任何东西的值 - 您的代码将更加简单,您甚至可以更改输入元素的类型而不会破坏任何东西。

于 2013-08-16T12:04:47.343 回答
0

为什么使用 get value 作为数组有什么特别的原因吗?

如果没有见下文:

var name    = $('#name').val();
var description = $('textarea#description').val();

考虑名称描述是您为文本字段和文本区域提供的 id。

于 2013-08-16T12:07:44.990 回答