Javascript 如何跟踪ul更改并将li传递到select标记?

Javascript 如何跟踪ul更改并将li传递到select标记?,javascript,html,Javascript,Html,我有一个有倍数的,可以加多减少。我希望这些能够跟踪并放在一个选择的倍数上,这样我就可以将它们传递到我的控制器中,我正在ASP.NETCore中使用Razor。问题是我无法将它们传递到我的选择中,因为我不知道在项目发生变化时如何触发函数/事件。调用是由InvokeAsync生成到另一个组件的,因此我无法直接获取它们,但必须从本地razor页面进行干预 我的HTML: <ul class="select2-selection__rendered"> <li

我有一个有倍数的,可以加多减少。我希望这些能够跟踪并放在一个选择的倍数上,这样我就可以将它们传递到我的控制器中,我正在ASP.NETCore中使用Razor。问题是我无法将它们传递到我的选择中,因为我不知道在项目发生变化时如何触发函数/事件。调用是由InvokeAsync生成到另一个组件的,因此我无法直接获取它们,但必须从本地razor页面进行干预

我的HTML:

<ul class="select2-selection__rendered">
   <li class="select2-selection__choice" title="(1098)TH.FA02-Crushing Machine" data-select2-id="101"><span class="select2-selection__choice__remove" role="presentation">×</span>(1098)TH.FA02-Crushing Machine</li>
   <li class="select2-selection__choice" title="(1097)TH.FA02-Juicing Machine" data-select2-id="102"><span class="select2-selection__choice__remove" role="presentation">×</span>(1097)TH.FA02-Juicing Machine</li>
   <li class="select2-selection__choice" title="(1097)TH.FA02-Harvesting Machine" data-select2-id="103"><span class="select2-selection__choice__remove" role="presentation">×</span>(1097)TH.FA02-Harvesting Machine</li>
   <li class="select2-search select2-search--inline"><input class="select2-search__field" type="search" tabindex="0" autocomplete="off" autocorrect="off" autocapitalize="none" spellcheck="false" role="searchbox" aria-autocomplete="list" placeholder="" style="width: 0.75em;"></li>
</ul>

<select asp-for="MachineModel.MachineProduct" hidden multiple id="selectHidden"></select>

我每次都是这样,这一定对你有帮助

$('#selectHidden').append('<option value="'+valueFromEach+'" data-select2-id="'+idFromEach+'"></option>')

如果您需要对直接控制之外的脚本触发的DOM更改做出反应,那么您应该使用。我遇到的问题是生成的“ul”甚至不能触发click函数。所以我不能再进一步传递数据了。哦,对不起,你可以试试这个:$this.on'click','select2-selection_uurendered',function{//bla bla}好的。你的方法现在几乎奏效了。只是当我点击该ul时,项目列表将被删除,我必须选择一个项目作为新的“li”添加。所有项目都具有相同的类。因此,如果我将类设置为单击,它们将不会触发,但是如果我将类设置为ul holder,那么它将仅在我添加项目之前触发,从而使最新的项目始终被忽略。请问我怎样才能克服这个问题?或者当ul支架内容更改时触发的事件也可以。
$('#selectHidden').append('<option value="'+valueFromEach+'" data-select2-id="'+idFromEach+'"></option>')