Я использую импровизированный плагин jquery. У меня есть варианты для вставки HTML под «HTML», но мне нужно заполнить массив значений, которые я получаю из PHP. Я не могу вставить его.
То, что я хочу, это заполнить поле выбора значениями, которые находятся в переменной php.
Я пробовал с:
var statesdemo = {
state0: {
title: 'Terms of Use',
html:'<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF"><tr><td><strong>Data1</strong></td><td>:</td><td id=\'Data1\'> <select name=\'Data1\' id=\'cart_wonid\' class=\'Data1\'><?php echo $options;?> </select></td></tr></table>',
buttons: { Cancel: false, Agree: true },
focus: 1,
submit:function(e,v,m,f){
if(v){
e.preventDefault();
$.prompt.goToState('state1', true);
return false;
}
$.prompt.close();
}
},
Обновление 1:
1- Основная идея — выпадающий список внутри всплывающего окна.
2- Я хочу получить данные выпадающего списка из запроса MySQL, который я написал на стороне сервера (php). Таким образом, без этого всплывающего окна идея, предложенная @tomloprod, работает отлично. Теперь возвращаясь к всплывающему окну, я могу добавить содержимое HTML, как
html : '< table > < /table > '
Но я хочу вставить переменную PHP внутри него, как
html : '< table > < ?php $myvariable ?> < /table >'
json_encode
(рекомендуемые)Вы можете добавить массив php в массив javascript следующим образом:
var javascript_Array = <?php json_encode($php_Array); ?>;
php array
в select
непосредственноПопробуйте сделать это напрямую с массивом в PHP; Я не вижу необходимости передавать его JS …
<select name="data1" id="cart_wonid" class="Data1">
<?php
$len = count($options);
for($c=0;$c<$len;$c++){
echo '<option value="'.$options[$c].'">$options[$c]</option>';
}
?>
</select>
javascript array
в select
HTML:
<select name="data1" id="cart_wonid" class="Data1"> </select>
Javascript:
// Define the array
var javascript_Array = [];
// Push elements
javascript_Array.push("Hi");
javascript_Array.push("Bye");
// Get the select with id cart_woneid
var sel = document.getElementById('cart_wonid');
// Fill the "select" with the elements of array
var i, len = javascript_Array.length;
for(i = 0; i < len; i++) {
var opt = document.createElement('option');
opt.innerHTML = javascript_Array[i];
opt.value = javascript_Array[i];
sel.appendChild(opt);
}
JSFiddle: http://jsfiddle.net/1dpud00v/
слава Богу … я получил ответ … его «json_encode ($ options)» делает свою работу …. Спасибо вам stackoverflow и спасибо за поддержку @tomloprod & Хуан Мендес