我有一个按钮来生成演示文稿。我只需点击一次即可生成8个演示文稿,然后点击其名称即可编辑每个演示文稿。我还有另一个更小的表格。我想也有一些按钮,这将让我选择我想要编辑的字段。这适用于“放置”部分 - 如果您想要,您可以指定地点。我有一个按钮来显示/隐藏连接到版本的字段。jQuery弹出按钮(php)
<div>
<?=
Html::button(Yii::t('app', 'Add new place'), [
'id' => "add-different-place-btn",
'class' => 'btn btn-success',
])
?>
<?=
Html::button(Yii::t('app', 'Delete new place'), [
'id' => "delete-different-place-btn",
'class' => 'btn btn-success',
])
?>
</div>
<br />
<div id="place-hidden-different">
<div id="place-name-hidden">
<?= $form->field($place, "[{$index}]name")->textInput()->label(Yii::t('app', 'New place')) ?>
</div>
<div id="place-city-hidden">
<?= $form->field($place, "[{$index}]city")->textInput() ?>
</div>
<div id="place-street-hidden">
<?= $form->field($place, "[{$index}]street")->textInput() ?>
</div>
<div id="place-postcode-hidden">
<?= $form->field($place, "[{$index}]post_code")->textInput() ?>
</div>
</div>
然后,在我的jQuery部分,我想出了这样的事情。请注意,我真的很新的jQuery的,因此它可以是东西真的很明显:)
$('.btn-popover-link').on('click', function() {
$(document).ready(function() {
$('#place-hidden-different').hide();
$('#delete-different-place-btn').hide();
$('#add-different-place-btn').on('click', function() {
$('#place-hidden-different').show();
$('#add-different-place-btn').hide();
$('#delete-different-place-btn').show();
});
$('#delete-different-place-btn').on('click', function() {
$('#place-hidden-different').hide();
$('#add-different-place-btn').show();
$('#delete-different-place-btn').hide();
});
});
});
但是,而不是让我想要什么,我得到这样的事情:
它看起来没问题。但它不起作用。点击“Dodaj nowe miejsce”(添加新地点)没有任何反应。 Morover,在其他演讲中我得到了各种各样的形式 - 下面的例子。没有一个按钮可以工作,在某些弹出窗口中根本没有按钮,有的只是不工作。
什么会导致这种情况呢?
如果我把它弄好,你为每个8个演示按钮使用相同的ID“add-different-place-btn”。 如果这是正确的,代码正常工作:ID *必须*是唯一的! 您应该像使用'.btn-popover-link'一样移动到类选择器上。('click',function(){} 'document.ready'中;) –
@GrégoireFruleux哇。很简单。谢谢!添加此评论作为答案,所以我可以接受它是正确的。 – Olga