Суть: нужно, чтобы при нажатии на кнопку на странице появлялась карта доставщика (в данном случае, боксбери)! Но запихнув его в js он не срабатывает! Я любитель, может просто соринку не вижу!
function btnClick1() {
var Txt1 = "";
var Txt2 = "";
Txt1 = document.Test.bt.value;
Txt2 = document.Test.bt.name;
document.getElementById('ex1').innerHTML = "<div id='Dos_Inter'>" +
"<script>" +
"boxberry.openOnPage('boxberry_map');" +
"boxberry.open();" +
"function callback_function(result){ " +
"document.getElementById('city').innerHTML = result.name;" +
"document.getElementById('js-pricedelivery').innerHTML = result.price;" +
"document.getElementById('code_pvz').innerHTML = result.id;" +
"result.name = encodeURIComponent(result.name);" +
"document.getElementById('name').innerHTML = result.name;" +
"document.getElementById('address').innerHTML = result.address;" +
"alert('усть телефон');" +
"document.getElementById('workschedule').innerHTML = result.workschedule;" +
"document.getElementById('phone').innerHTML = result.phone;" +
"document.getElementById('period').innerHTML = result.period;" +
"if (result.prepaid=='1') { " +
"alert('Отделение работает только по предоплате!'); " +
"}" +
"}" +
"</script>" +
"<div id='boxberry_map'></div>" +
"</div>";
}
<div id="ex1"></div>
https://www.danielcrabtree.com/blog/25/gotchas-with-dynamically-adding-script-tags-to-html
function btnClick1() {
document.getElementById('ex1').innerHTML =
"<div id='Dos_Inter'>" +
"<div id='boxberry_map'></div>" +
"</div>";
var script = document.createElement("script");
var inlineScript = document.createTextNode("console.log('dynamic script');");
script.appendChild(inlineScript);
document.getElementById('Dos_Inter').appendChild(script);
}
<div id="ex1"></div>
<button type="button" onclick="btnClick1()">Click</button>
Так, как у вас, работать не будет.
Код должен быть примерно таким:
document.getElementById('ex1').innerHTML = "<div id='Dos_Inter'><div id='boxberry_map'></div></div>";
function callback_function(result){
document.getElementById('city').innerHTML = result.name;
document.getElementById('js-pricedelivery').innerHTML = result.price;
document.getElementById('code_pvz').innerHTML = result.id;
result.name = encodeURIComponent(result.name);
document.getElementById('name').innerHTML = result.name;
document.getElementById('address').innerHTML = result.address;
alert('усть телефон');
document.getElementById('workschedule').innerHTML = result.workschedule;
document.getElementById('phone').innerHTML = result.phone;
document.getElementById('period').innerHTML = result.period;
if (result.prepaid=='1') {
alert('Отделение работает только по предоплате!');
}
}
boxberry.openOnPage('boxberry_map');
boxberry.open();
Но где вы вызываете callback_function с объектом result? Возможно её вызывает boxberry? Если нет, то в конец кода нужно добавить:
callback_function(передаваемыйОбъект);
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
как обрезать длинную строку в IE8Перепробовал несколько вариантов ничего не вышло