Я пытаюсь заполнить выпадающий список значениями из текстового файла. У меня есть следующий код, однако я не вижу ничего в выпадающем списке. Может кто-нибудь мне помочь?
Вот мой код для выпадающего списка jquery и HTML:
<script>
$filename = 'pytxt.txt';
$eachlines = file($filename, FILE_IGNORE_NEW_LINES);
echo '<select name="value" id="value">';
foreach($eachlines as $lines){
echo "<option>($lines)</option>";
}
echo '</select>';
</script>
</head>
<body>
<div id="page-wrap">
<h1>Pulls from text files</h1>
<select id="value">
<option selected value="base">Please Select</option>
<option value="1"></option>
<option value="2"></option>
</select>
</div>
</body>
1. Ваша текущая кодовая страница должна быть .php
страница. (расширение страницы должно быть .php
)
2. изменить код, как показано ниже: —
<?php
//remove <script></script> and add php start and close tag
//comment these two lines when code started working fine
error_reporting(E_ALL);
ini_set('display_errors',1);
$filename = 'pytxt.txt';
$eachlines = file($filename, FILE_IGNORE_NEW_LINES);
?>
<body>
<div id="page-wrap">
<h1>Pulls from text files</h1>
<select id="value">
<option selected value="base">Please Select</option>
<?php foreach($eachlines as $lines){ //add php code here
echo "<option value='".$lines."'>$lines</option>";
}?>
</select>
</div>
</body>
Чтобы догнать ваш код, вы можете сделать что-то вроде
<?php
$filename = 'pytxt.txt';
$eachlines = file($filename, FILE_IGNORE_NEW_LINES);
$select = '<select name="value" id="value">';
foreach($eachlines as $lines)
{
$options .= "<option>{$lines}</option>";
}
$select .= $options . "</select>";
?>
И чем вы можете добавить его в свой HTML. Все это должно быть в одном и том же php-файле. (не рекомендуется!)
<body>
<div id="page-wrap">
<h1>Pulls from text files</h1>
<?php echo $select; ?>
</div>
</body>
даже если это противный источник! Я рекомендую отделить PHP от HTML. Но, догоняя ваш источник, это может выглядеть так.
Так как кажется, что вы хотите получить ответ jQuery / HTML …
<head>
<script>
$.get('pytxt.txt'),
function(data) {
console.log(data); /* Open the console too see the data */
var options = data.split(','),
/* Something to "explode" by. See link. */
$select = $('select#value');
for (var i = 0; i < options.length; i++) {
$select.append('<option value="' + i + '">' + options[i] + '</option>"');
}
}, "text");
</script>
</head>
<body>
<div id="page-wrap">
<h1>Pulls from text files</h1>
<select id="value">
<option selected value="base">Please Select</option>
</select>
</div>
</body>