我有一个带有文本字段,下拉菜单,一些radiobuttons和textarea的表单。 一切正常,但下拉菜单除外。 这是它:
<select class="dropdown" id="employee" size="1" class="text" value="">
<option value="1" selected="selected">Heino</option>
<option value="2">Michael Jackson</option>
<option value="3">Tom Waits</option>
<option value="4">Nina Hagen</option>
<option value="5">Marianne Rosenberg</option>
</select>
<button id="send" class="btn">Send</button>
如果我点击按钮,我的JS会获得所有值,但下拉列表会显示undefined
$('#send').click(function() {
var result=true;
var name = $('input[name=name]');
var employee = $('input[name=employee)';
var product = $('input[name=product]:checked');
var knowledge = $('input[name=knowledge]:checked');
var message = $('textarea[name=message]');
// Data
var data = 'name=' + name.val() +
'&employee=' + employee.val() +
'&product=' + product.val() +
'&knowledge=' + knowledge.val() +
'&message=' + encodeURIComponent(message.val());
产品和知识是radiobuttons。他们工作。名称和信息也是。
有没有像收音机按钮“已选中”的方式? 如果公式已成功发送为电子邮件,则此脚本应显示一条成功消息。
答案 0 :(得分:0)
这里:
var employee = $('input[name=employee)';
''中的 )
更改时间:
var employee = $('input[name=employee]');
答案 1 :(得分:0)
首先想一想,你忘了关闭] 括号。第二,搜索下拉列表是select元素的输入。第三,您没有将 name 属性添加到下拉列表元素。
更改此代码:
$('input[name=employee)';
进入
$("#employee");
或
$('select[id=employee]');
校正:
抱歉,试试这个
$('#employee').find(":selected").text();
答案 2 :(得分:0)
谢谢你们。 在你的帮助下得到了答案!
将下拉列表更改为:
<select style="width:341.5px" class="dropdown" name="employee" id="employee" size="1" class="text" value="">
<option value="Heino" selected="selected">Heino</option>
<option value="Michael Jackson">Michael Jackson</option>
<option value="Tom Waits">Tom Waits</option>
<option value="Nina Hagen">Nina Hagen</option>
<option value="Marianne Rosenberg">Marianne Rosenberg</option>
</select>
(值字段中的名称)
JS到:
var employee = $('select[name=employee]');