我正在使用magento 2.1.0,我是magento的新手,所以我无法获得实际结果。
我创建了这个块:
public function serviceArea() {
return $this->getArea1('2');
}
public function getArea1($city_id) {
return $this->areaModel->getCollection()->addFieldToFilter('city_id',$city_id);
}
我打电话是这样的:
$areaCollection = $block->getLayout()->createBlock('XXXX\Vac \Block\Vac')->serviceArea();
print_r($areaCollection->getData());
我得到这样的输出:
Array ( [0] => Array ( [area_id] => 1 [area] => banashankari [city_id] => 2 ) [1] => Array ( [area_id] => 2 [area] => madiwala [city_id] => 2 ) [2] => Array ( [area_id] => 3 [area] => btm layout [city_id] => 2 ) )
现在,我希望将其用于我的onchange过程,就像我在下拉列表中更改城市一样,我的区域也会相应改变。
为此。我写剧本:
<script>
require(['jquery'], function(jQuery) {
jQuery('#city').on('change', function () {
jQuery.ajax({
url: "<?php echo $this->getBaseUrl('*/*/*', ['_current' => true, '_use_rewrite' => true]).'Vac/area/index/'; ?>",
// url: "getAjaxUrl()",
data: {city_id: jQuery("#city").val()},
type: "POST",
success: function(data) {
jQuery('#area').html(data['html']);
}
});
});
});
</script>
在脚本中,我给了控制器的url。但我不知道该怎么做,或者我必须修改脚本。请帮忙。
答案 0 :(得分:0)
检查您的送货延期中是否存在以下所有文件。
view/
└── frontend
├── layout
│ ├── checkout_cart_index.xml
│ └── checkout_index_index.xml
└── web
└── js
├── model
│ ├── shipping-rates-validation-rules.js
│ └── shipping-rates-validator.js
└── view
└── shipping-rates-validation.js