2

我正在从 5 个选项卡表单中获取所有输入。循环浏览它们时,我会将它们添加到评论部分。我让它工作正常,但我想显示选择下拉菜单的文本而不是值,因为该值对用户没有意义。这是我正在使用的几个代码片段。这是里面和 $(:input.each(function(){} 我检查它是否是一个选择。如果是这样,我设置一个 tmp 变量并在名称上添加 '_in',因为我有所有字段名称加上那个在确认选项卡上。然后我检查新变量的长度以确保它在确认选项卡上。如果是这样,请将 html 更新为文本。问题是它显示所有下拉文本选项。如果我这样做 .val( ) 它只给出所选值的值。

//Gives all text options from the drop down.
if ($(this).prop('type') == 'select-one') {
  var tmp = '#'+$(this).attr('name')+'_in';
  if ($(tmp).length > 0) {
    $(tmp).html($(this).text());
  }         
}

//Gives only value of selected option from drop down.
if ($(this).prop('type') == 'select-one') {
  var tmp = '#'+$(this).attr('name')+'_in';
  if ($(tmp).length > 0) {
    $(tmp).html($(this).val());
  }

固定解决方案

if ($(this).prop('type') == 'select-one') {
  var tmp = '#'+$(this).attr('name')+'_in';
  var tmp2 = '#'+$(this).attr('name')+' option:selected';
  if ($(tmp).length > 0) {

tmp3 = $(tmp2).text();
$(tmp).html(tmp3);
}           
}
4

1 回答 1

1

您可以通过使用获取选择的文本

$("#yourdropdownid option:selected").text();

于 2012-07-18T15:23:09.907 回答