0
我在索引頁上有一張地圖。我想點擊地圖並在該位置放置一個標記。點擊事件有一個函數,我想打開一個模式(jQuery對話框),並從另一個子頁面加載一個表格,現在位置填入正確的表單字段。將值傳遞給jQuery對話框中的表單輸入字段?
我的問題是將值(標記位置)傳遞給表單中的輸入字段。我的功能似乎工作,如果我把輸入字段的索引頁上的某個地方,但不是在對話框中的子模板。
我正在嘗試這個$('#test_input')。val(lng +','+ lat);但它只顯示毫秒值然後消失。你有什麼想法,爲什麼這不起作用?或者如何重建這個?謝謝!
function onMapClick(e) {
var lat = e.latlng.lat;
var lng = e.latlng.lng;
if (typeof marker != 'undefined') {
map.removeLayer(marker);
marker = L.marker([lat, lng], {icon: redMarker}).addTo(map);
}
else {
marker = L.marker([lat, lng], {icon: redMarker}).addTo(map);
}
$('#upload-modal').load('upload/ #myform');
$('#test_input').val(lng + ',' + lat); //This is what I'm trying<----------
$('#upload-modal').dialog({
height: 550,
width: 500,
modal: false,
buttons: {
Upload: function() {
var dialog = $(this),
form = $('#myform'),
data = form.serialize();
$('.off').remove();
$.ajax({
url: 'upload/',
data: data,
type: 'post',
success: function(response) {
res = $.parseJSON(response);
if (res['status'] == 'OK') {
alert('Thank you! Form has been submitted');
dialog.dialog('close');
}
else if (res['status'] == 'bad') {
delete res['status']
var errors = res;
$.each(errors, function(key, value) {
var err = $('<span></span>', {
'class': 'off',
'text': value
}),
br = $('<br></br>', {
'class': 'off',
}),
input = $('#id_'+key).parent();
br.appendTo(input);
err.appendTo(input);
err.css('color', 'red').css('font-size', '10px');
});
}
}
});
}
}
});
}
哦,是的!它正在工作!非常感謝你的梅蘭! – user3199840