46 行
1.9 KiB
JavaScript
46 行
1.9 KiB
JavaScript
require([], function () {
|
|
//绑定data-toggle=addresspicker属性点击事件
|
|
|
|
$(document).on('click', "[data-toggle='addresspicker']", function () {
|
|
var that = this;
|
|
var callback = $(that).data('callback');
|
|
var input_id = $(that).data("input-id") ? $(that).data("input-id") : "";
|
|
var lat_id = $(that).data("lat-id") ? $(that).data("lat-id") : "";
|
|
var lng_id = $(that).data("lng-id") ? $(that).data("lng-id") : "";
|
|
var zoom_id = $(that).data("zoom-id") ? $(that).data("zoom-id") : "";
|
|
var lat = lat_id ? $("#" + lat_id).val() : '';
|
|
var lng = lng_id ? $("#" + lng_id).val() : '';
|
|
var zoom = zoom_id ? $("#" + zoom_id).val() : '';
|
|
var address = input_id ? $("#" + input_id).val() : ($(that).data("address") || '');
|
|
var query = [];
|
|
if (lat && lng) {
|
|
query.push('lat=' + encodeURIComponent(lat));
|
|
query.push('lng=' + encodeURIComponent(lng));
|
|
}
|
|
if (address) {
|
|
query.push('address=' + encodeURIComponent(address));
|
|
}
|
|
if (zoom) {
|
|
query.push('zoom=' + encodeURIComponent(zoom));
|
|
}
|
|
var url = "/addons/address/index/select" + (query.length ? '?' + query.join('&') : '');
|
|
Fast.api.open(url, '位置选择', {
|
|
callback: function (res) {
|
|
input_id && $("#" + input_id).val(res.address).trigger("change");
|
|
lat_id && $("#" + lat_id).val(res.lat).trigger("change");
|
|
lng_id && $("#" + lng_id).val(res.lng).trigger("change");
|
|
zoom_id && $("#" + zoom_id).val(res.zoom).trigger("change");
|
|
|
|
try {
|
|
//执行回调函数
|
|
if (typeof callback === 'function') {
|
|
callback.call(that, res);
|
|
}
|
|
} catch (e) {
|
|
|
|
}
|
|
}
|
|
});
|
|
});
|
|
});
|