Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何按值对进行排序?_Javascript_Html_Sorting_Html Lists_Selection - Fatal编程技术网

Javascript 如何按值对进行排序?

Javascript 如何按值对进行排序?,javascript,html,sorting,html-lists,selection,Javascript,Html,Sorting,Html Lists,Selection,我试图根据select标记中的选项指定的值对ul进行排序 <ul style="list-style-type: none;"> <li>MCF3M0 - Functions and Applications</li> <select value="MCF3M0"> <option value="1">1 Star</option> <option value="2">2 Stars&l

我试图根据select标记中的选项指定的值对ul进行排序

<ul style="list-style-type: none;">

  <li>MCF3M0 - Functions and Applications</li>
  <select value="MCF3M0">
    <option value="1">1 Star</option>
    <option value="2">2 Stars</option>
    <option value="3">3 Stars</option>
    <option value="4">4 Stars</option>
    <option value="5">5 Stars</option>
  </select>
  <li>BDI3C0 - Entrepreneurship: The Venture</li>
  <select value="BDI3C0">
    <option value="1">1 Star</option>
    <option value="2">2 Stars</option>
    <option value="3">3 Stars</option>
    <option value="4">4 Stars</option>
    <option value="5">5 Stars</option>
  </select>
  <li>FSF3U0 - Core French</li>
  <select value="FSF3U0">
    <option value="1">1 Star</option>
    <option value="2">2 Stars</option>
    <option value="3">3 Stars</option>
    <option value="4">4 Stars</option>
    <option value="5">5 Stars</option>
  </select>
  <li>SPH3U0 - Physics</li>
  <select value="SPH3U0">
    <option value="1">1 Star</option>
    <option value="2">2 Stars</option>
    <option value="3">3 Stars</option>
    <option value="4">4 Stars</option>
    <option value="5">5 Stars</option>
  </select>
</ul>
<button type="submit">Submit Ratings</button>

我试图通过用户指定的评分对这些课程进行排序。一个javascript函数将帮助排序和显示新的排名课程列表,我们将不胜感激。

首先:当您发布HTML时,它是无效的。A应该只作为直系子女,而不是。您可能应该将标签移到标签内部

如果您想让javascript函数在下拉列表更改值时更改这些项的顺序,则需要在每个项上附加一个事件处理程序onchange,处理程序回调将收集每个项的当前值,然后根据这些值对相应项进行排序。像jquery这样的库可以执行以下操作:

$('ul').on('change', 'select', function () { doSort(); });

从这里开始,您只需要获得doSort,根据列表项中的值对列表的子项进行排序。

这是无效的htmlWhat's you trust and by what?…因此,将所有1颗星放在选择中,将所有2颗星放在选择中…等等。这就是你的意思吗?我正在尝试排序:MCF3M0-函数和应用程序,以及其他3门课程,按等级排序听起来像是一个选择框将针对一个div,其中包含另一个选择框。