gpt4 book ai didi

javascript - 克隆和删除列表项,但如果是该项目,则阻止删除第一个

转载 作者:行者123 更新时间:2023-11-27 22:48:57 25 4
gpt4 key购买 nike

我有一个包含美国州下拉列表的表单。

<ul class="stateSelector" id="stateSelector">
<li id="TemplateRow" class="state-dropdown-row">

<span class="ua-dropdown">
<select name="state[]" id="state" required data-parsley-error-message="* Please select a state">
<option value="">Select State</option>
<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
<option value="AR">Arkansas</option>
<option value="CA">California</option>
<option value="CO">Colorado</option>
<option value="CT">Connecticut</option>
<option value="DE">Delaware</option>
<option value="DC">District of Columbia</option>
<option value="FL">Florida</option>
<option value="GA">Georgia</option>
<option value="HI">Hawaii</option>
<option value="ID">Idaho</option>
<option value="IL">Illinois</option>
<option value="IN">Indiana</option>
<option value="IA">Iowa</option>
<option value="KS">Kansas</option>
<option value="KY">Kentucky</option>
<option value="LA">Louisiana</option>
<option value="ME">Maine</option>
<option value="MD">Maryland</option>
<option value="MA">Massachusetts</option>
<option value="MI">Michigan</option>
<option value="MN">Minnesota</option>
<option value="MS">Mississippi</option>
<option value="MO">Missouri</option>
<option value="MT">Montana</option>
<option value="NE">Nebraska</option>
<option value="NV">Nevada</option>
<option value="NH">New Hampshire</option>
<option value="NJ">New Jersey</option>
<option value="NM">New Mexico</option>
<option value="NY">New York</option>
<option value="NC">North Carolina</option>
<option value="ND">North Dakota</option>
<option value="OH">Ohio</option>
<option value="OK">Oklahoma</option>
<option value="OR">Oregon</option>
<option value="PA">Pennsylvania</option>
<option value="RI">Rhode Island</option>
<option value="SC">South Carolina</option>
<option value="SD">South Dakota</option>
<option value="TN">Tennessee</option>
<option value="TX">Texas</option>
<option value="UT">Utah</option>
<option value="VT">Vermont</option>
<option value="VA">Virginia</option>
<option value="WA">Washington</option>
<option value="WV">West Virginia</option>
<option value="WI">Wisconsin</option>
<option value="WY">Wyoming</option>
</select>
</span>

<a href="#" name="DeleteBoxRow" class="DeleteBoxRow removeState state-btn">Remove State</a>
</li>
<li>
<div class="addState">
<a href="#" id="AddAttr" name="AddAttr" class="clone state-btn">Add another State</a>
</div>
</li>

https://jsfiddle.net/stevieg_83/86f7ba9m/

用户可以添加多个状态。在我可以添加几个状态并允许删除第一个状态并使第二个变为第一个等等方面遇到一些麻烦。

我正在寻找它的行为像 https://www.google.co.uk/flights/#search;iti=LHR,LGW,LCY,STN,LTN,QQS__2016-07-21;tt=m

只要有多个项目,如何克隆并允许删除第一个项目?

最佳答案

您可以使用以下方法评估是否存在多个元素:

$('#stateSelector').delegate('.DeleteBoxRow', 'click', function() {
if ($('#stateSelector li').length > 2) {
$(this).closest('li').remove();
} else {
return false;
}
});

Updated Fiddle

<小时/>

编辑:

经过测试,我发现如果您删除第一个选择,则无法创建新的选择,这是因为您正在根据元素的 id 克隆该元素,而您可以克隆第一个元素:

var newRow = $('#stateSelector li').first().clone(true).removeAttr('id');

Updated Fiddle

关于javascript - 克隆和删除列表项,但如果是该项目,则阻止删除第一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38211769/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com