0

我有一个包含多个输入和选择元素的表单。在表格的最后,我将显示用户输入/选择的内容的摘要 - 我希望它能够实时更改,即当用户进行更改时。

这是我的表格的一部分:

<select class="select" id="eventType" name="eventType">
    <option vlaue="0"></option>
    <option value="0">Wedding</option>
    <option value="0">Private Party</option>
    <option value="0">Corporate Event</option>
 </select>

还有我正在使用的 jQuery:

$(".txt, .select, .checkbox").each(function() {
        $(this).change(function(){
    createSummary();
        });
    });

function createSummary() {
    var eventType = $("#eventType").val();      
    $(".summary_eventType").html(eventType);

}

然而,这只是返回值 0 而不是选择的实际文本。

4

3 回答 3

1

好的,您还想从中得到什么?:

<select class="select" id="eventType" name="eventType">
  <option vlaue="0"></option>
  <option value="0">Wedding</option>
  <option value="0">Private Party</option>
  <option value="0">Corporate Event</option>
</select>

这将提供为零的值,因为它们都具有0集合作为它们的值。使用某个值可以最小化错误。

像这样设置一些值:

<select class="select" id="eventType" name="eventType">
  <option value="0"></option>
  <option value="1">Wedding</option>
  <option value="2">Private Party</option>
  <option value="3">Corporate Event</option>
</select>

另外,请注意您vlaue在第一个选项中。这不是正确的方法!你需要使用value. 就这样。

于 2013-09-10T16:35:42.897 回答
1

要获取所选选项的文本,请使用.html()

var eventType = $("#eventType option:selected").html(); 

现场演示

于 2013-09-10T16:30:17.377 回答
0

您所有选项的值设置为O

在下面的每个选项中,value设置为zero

<option value="0">Wedding</option> // see value='0'
 <option value="0">Private Party</option>
<option value="0">Corporate Event</option>

您可以将其更改为

<option value="Wedding">Wedding</option> // 
     <option value="Private Party">Private Party</option>
    <option value="Corporate Event">Corporate Event</option>

工作演示

或者

工作演示

更改代码

function createSummary() {
    var eventType = $("#eventType option:selected").text() // changed code
    $(".summary_eventType").html(eventType);

}
于 2013-09-10T16:38:40.210 回答