$sUrl = 'http://www.linktopage.com/login/';
$params = array('http' => array(
'method' => 'POST',
'content' => 'username=admin195&password=d123456789'
));
$ctx = stream_context_create($params);
$fp = @fopen($sUrl, 'rb', false, $ctx);
if (!$fp)
{
throw new Exception("Problem with $sUrl, $php_errormsg");
}
$response = @stream_get_contents($fp);
if ($response === false)
{
throw new Exception("Problem reading data from $sUrl, $php_errormsg");
}
Использование:
$("#id option").each(function()
{
// Add $(this).val() to your list
});
jQuery Некоторое использование ответов each
, но map
лучшая альтернатива здесь, по моему скромному мнению:
$("select#example option").map(function() {return $(this).val();}).get();
существуют (по крайней мере) два map
функции в jQuery. Ответ Thomas Petersen использует "Utilities/jQuery.map"; этот ответ "Пересекающее/отображенный" использование (и поэтому немного более чистый код).
Это зависит от того, что Вы собираетесь сделать со значениями. Если Вы, скажем, хотите возвратить значения из функции, map
, вероятно, лучшая альтернатива. Но если Вы собираетесь использовать значения непосредственно, Вы, вероятно, хотите each
.
$('select#id').find('option').each(function() {
alert($(this).val());
});
Это поместит значения опции #myselectbox
в хороший чистый массив для Вас:
// First, get the elements into a list
var domelts = $('#myselectbox option');
// Next, translate that into an array of just the values
var values = $.map(domelts, function(elt, i) { return $(elt).val();});
Я не знаю jQuery, но я действительно знаю, что, если Вы получаете избранный элемент, он содержит объект 'опций'.
var myOpts = document.getElementById('yourselect').options;
alert(myOpts[0].value) //=> Value of the first option
Короткий путь
$(() => {
$('#myselect option').each((index, data) => {
console.log(data.attributes.value.value)
})})
или
export function GetSelectValues(id) {
const mData = document.getElementById(id);
let arry = [];
for (let index = 0; index < mData.children.length; index++) {
arry.push(mData.children[index].value);
}
return arry;}