Javascript 显示表中下拉列表中的选择

Javascript 显示表中下拉列表中的选择,javascript,jquery,html,ajax,json,Javascript,Jquery,Html,Ajax,Json,我有一组下拉列表,下面有一个选择按钮。 我想尝试做的是,一旦用户通过三个下拉菜单并按下select,所选的选项将显示在其指定类别的相应表格中 HTML: 提前感谢您的帮助。由于您的数据键被调用choose\N,并且您的列包含文本choose N,因此您可以通过拆分值并获取最后一部分来匹配它们: var number1 = 'choose_1'.split('_')[1]; var number2 = 'choice 1'.split(' ')[1]; return number1 == numb

我有一组下拉列表,下面有一个选择按钮。 我想尝试做的是,一旦用户通过三个下拉菜单并按下select,所选的选项将显示在其指定类别的相应表格中

HTML:


提前感谢您的帮助。

由于您的
数据
键被调用
choose\N
,并且您的列包含文本
choose N
,因此您可以通过拆分值并获取最后一部分来匹配它们:

var number1 = 'choose_1'.split('_')[1];
var number2 = 'choice 1'.split(' ')[1];
return number1 == number2; // corresponding choice
如果需要更精确的内容,还可以使用相应的值对HTML进行注释:

<tr data-choice="choose_1">
   <td>choice 1</td>
   <td></td>
</tr>

$(myselector).data("choice"); // Will return "choose_1"
在犹他州。唯一需要注意的是,如果用户想要选择第一个选项(已经选择的选项),他必须更改它并再次更改以触发事件(从这个意义上说,
select
按钮更干净)


如果您仍然只想在按下按钮时执行此操作,只需将
$('third')替换为
$('third')。将(…)
更改为
$('third')。单击(…)
(编辑:和
$(此)
$('third')
)。您可能还必须使用
event.preventDefault
,因此表单不会提交。

您似乎已经解决了大部分问题。是什么给你带来麻烦的?(如何“记住”以前选择的值,如何更新表格,等等…)如何实际显示表格中选择的选项?例如对于choose_7,用户选择“平均值”。按下
#select_btn
按钮后,我想在表上选项7旁边显示“avg”。每个选项都会更新表格,这就是我想要的。谢谢你的帮助。我的jquery/js知识还是有点新鲜,我想分配
数据属性,但不确定。另外两件事,我如何(1)在单击选择按钮后重置下拉列表,以及(2)保存此表数据以便用户登录时可以查看其选择的最佳方法?要重置,只需清空选择(即删除所有
选项):
$('#秒,#三度').empty()
;要在登录之间保存,这取决于-客户端还是服务器端?ajax还是表单提交?您在服务器中使用的是什么?用户登录系统将是服务器端的,但是对于这个用户输入,我希望有它的客户端/服务器(没有数据库),可能有ajax/json的帮助。我想设计一个保存和编辑按钮,所以用户(1)输入他们的选择,(2)完成后按保存。(3) 这些选择将显示在表格中。(4) 如果他们想编辑,可以按“编辑”按钮。(5) 保存它将创建一个新的JSON/txt文件。我在正确的轨道上还是不可能?@user1648449在我看来很好。要将值发送到服务器(或检索值并更新表),可以使用。现在,如果您想将这些值保存在标记本身、结构或JavaScript变量中(任何都可以,根据您的个人喜好进行选择),您可以选择。感谢您的帮助和建议。一个关于我的下拉列表的快速问题,我刚刚注意到,当我单击例如“选择a”时,第二个下拉列表显示“选择1”,这很好,但为了查看“选择1”选项,我必须单击另一个选择,然后返回,打开第三个下拉列表。有没有办法让第一个选项自动打开它的选项(第三个下拉列表)?
select{width:150px;}

#result{width:450px; border:2px solid #234323;}

td{width:225px; text-align:center}

th{background:#656454; color:#eee; text-align:center}
var number1 = 'choose_1'.split('_')[1];
var number2 = 'choice 1'.split(' ')[1];
return number1 == number2; // corresponding choice
<tr data-choice="choose_1">
   <td>choice 1</td>
   <td></td>
</tr>

$(myselector).data("choice"); // Will return "choose_1"
$('#third').change(function() {
    $('table tr').filter(function() {                                // Filters the rows, by:
        var number1 = $('#sec').val().split('_')[1];                 // comparing the value at #sec
        var number2 = $(this).find('td:eq(0)').text().split(' ')[1]; // with the text of the first column.
        return number1 == number2;
    }).find('td:eq(1)').text($(this).val()); // Updates the second column.
});