Я использую Magento Open Source 2.3.x
, у меня есть пользовательская форма. Что мне нужно сделать, это добавить всплывающее окно подтверждения для кнопки сохранения. Я мог бы добавить такое всплывающее окно для кнопки Delete
, но не для кнопки Save
. Любая помощь высоко ценится. Вот мой компонент пользовательского интерфейса. xml file.
<form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
<argument name="data" xsi:type="array">
<item name="js_config" xsi:type="array">
<item name="provider" xsi:type="string">ven_customers_storecredit_topup_form.topup_form_data_source</item>
</item>
<item name="label" translate="true" xsi:type="string">General Information</item>
<item name="template" xsi:type="string">templates/form/collapsible</item>
</argument>
<settings>
<buttons>
<button class="Vendor\Module\Block\Adminhtml\Topup\Edit\BackButton" name="back"/>
<button class="Vendor\Module\Block\Adminhtml\Topup\Edit\SaveButton" name="save"/>
</buttons>
<namespace>ven_customers_storecredit_topup_form</namespace>
<dataScope>data</dataScope>
<deps>
<dep>ven_customers_storecredit_topup_form.topup_form_data_source</dep>
</deps>
</settings>
<dataSource name="topup_form_data_source">
<argument name="data" xsi:type="array">
<item name="js_config" xsi:type="array">
<item name="component" xsi:type="string">Magento_Ui/js/form/provider</item>
</item>
</argument>
<settings>
<submitUrl path="*/*/save"/>
</settings>
<dataProvider class="Vendor\Module\Model\Customer\DataProvider" name="topup_form_data_source">
<settings>
<requestFieldName>id</requestFieldName>
<primaryFieldName>entity_id</primaryFieldName>
</settings>
</dataProvider>
</dataSource>
<fieldset name="general">
<settings>
<label>General</label>
</settings>
<field name="topup" sortOrder="80" formElement="select">
<settings>
<dataType>text</dataType>
<label translate="true">Amount</label>
<dataScope>topup</dataScope>
</settings>
<formElements>
<select>
<settings>
<options class="Vendor\Module\Model\Source\PriceOptions"/>
</settings>
</select>
</formElements>
</field>
</fieldset>
</form>
Вот класс кнопки
<?php
namespace Vendor\Module\Block\Adminhtml\Topup\Edit;
use Magento\Framework\View\Element\UiComponent\Control\ButtonProviderInterface;
class SaveButton extends GenericButton implements ButtonProviderInterface
{
public function getButtonData()
{
return [
'label' => __('Save'),
'class' => 'save primary',
'data_attribute' => [
'mage-init' => ['button' => ['event' => 'save']],
'form-role' => 'save',
],
'sort_order' => 90,
];
}
}