我在字段集中添加事件,虽然我可以添加它们,但我不确定如何编写正确的函数来删除它们。我有它在javascript工作,但被要求使用JQuery编写它,似乎无法使其工作。我研究过的所有例子似乎都不适用于我的原始克隆功能,它在其中构建了一个删除按钮。字段集也重复,我已经为此工作了代码,只需要一点这个删除事件函数的帮助。
这里是javascript / jquery:
var _eventCounter = 0;
var removeEventButton = $("<input></input>").attr("type", "button").attr("value", "-");
function addEvent(num)
{
_eventCounter++;
var c = $("#event-code-"+num).clone(true);
c.attr("id", "event-code-"+num);
var eventName = "s"+num+"_e["+_eventCounter+"]";
$('#'+ eventName, c).val('')
$("#textNumberRequired1", c).val('');
removeEventButton.attr("onClick", "removeEvent('+c+')");
$(c).append(removeEventButton.clone(true));
$("#event-placeholder-"+num).append(c);
}
function removeEvent(c) {
//$("#event-placeholder #event-code-1").remove();
$(c).remove();
}
这是html / php:
<div id="section_placeholder">
<div id="section_template1">
<fieldset class="box-outline-blue">
<legend>Section Requirements</legend>
<h3>Number of events required: </h3><input type="text" id="textNumberRequired1" size="8" name="numberRequired1"><br>
<br />
<h3>Please enter the required event codes: </h3>
<div id="event-placeholder-1">
<div class="eventCode" id="event-code-1">
<br />Event Code: <input type="text" id = "eventCodes_section1" name="s1_e[]" size=8 > <input type="button" id="add" onClick="addEvent(1)" value="+">
</div>
</div>
<br /><br />
</fieldset>
</div>
</div>
答案 0 :(得分:0)
点击删除按钮,点击jQuery:
这:removeEventButton.attr("onclick", "removeEvent("+c+")");
至:$(removeEventButton).on("click", removeEvent);
向class
添加event-placeholder-x div
,删除会更容易
<div id="event-placeholder-1" class='placeholder'>
最后,当remove button
收到点击后,您的removeEvent
会找到它的父母,然后将其删除
这:$(c).remove();
至:$(this).parentsUntil('.placeholder').remove();