У меня был вариант Kotlin, который показал, что это лучший результат в Google.
@Throws(UnsupportedEncodingException::class)
fun splitQuery(url: URL): Map<String, List<String>> {
val queryPairs = LinkedHashMap<String, ArrayList<String>>()
url.query.split("&".toRegex())
.dropLastWhile { it.isEmpty() }
.map { it.split('=') }
.map { it.getOrEmpty(0).decodeToUTF8() to it.getOrEmpty(1).decodeToUTF8() }
.forEach { (key, value) ->
if (!queryPairs.containsKey(key)) {
queryPairs[key] = arrayListOf(value)
} else {
if(!queryPairs[key]!!.contains(value)) {
queryPairs[key]!!.add(value)
}
}
}
return queryPairs
}
И методы расширения
fun List<String>.getOrEmpty(index: Int) : String {
return getOrElse(index) {""}
}
fun String.decodeToUTF8(): String {
URLDecoder.decode(this, "UTF-8")
}
ASP.NET представляет таблицу и набор другой разметки вокруг фактических радио-исходных данных. Следующее должно work:-
var list = document.getElementById("radios"); //Client ID of the radiolist
var inputs = list.getElementsByTagName("input");
var selected;
for (var i = 0; i < inputs.length; i++) {
if (inputs[i].checked) {
selected = inputs[i];
break;
}
}
if (selected) {
alert(selected.value);
}
Я всегда Источник Представления. Вы найдете, что каждый объект переключателя имеет уникальный идентификатор, с которым можно работать и выполнить итерации через них для выяснения, какой Проверяется.
Редактирование: найденный примером. У меня есть список переключателя rbSearch. Это находится в ascx под названием ReportFilter. В поле зрения Источник, который я вижу
ReportFilter1_rbSearch_0
ReportFilter1_rbSearch_1
ReportFilter1_rbSearch_2
, Таким образом, можно или циклично выполниться через document.getElementById ("ReportFilter1_rbSearch _" + idx) или иметь оператор переключения и видеть, какой имеет .checked = верный.
RadioButtonList
управление сервером ASP.NET. Это представляет HTML к браузеру, который включает переключатель, Вы пытаетесь управлять использованием JavaScript.
я рекомендовал бы использовать что-то как Панель инструментов Разработчика IE (если Вы предпочитаете Internet Explorer), или Firebug (если Вы предпочитаете FireFox) осмотреть вывод HTML, и найти идентификатор переключателя Вы хотите управлять в JavaScript.
Затем можно использовать document.getElementByID("radioButtonID").checked
от JavaScript, чтобы узнать, устанавливается ли переключатель или нет.
HTML-эквивалент ASP.NET RadioButtonList, ряд < входной тип = "радио"> с тем же атрибутом имени (на основе свойства ID RadioButtonList).
можно получить доступ к этой группе переключателей с помощью getElementsByName. Это - набор переключателей, к которым получают доступ через их индекс.
alert( document.getElementsByName('RadioButtonList1') [0].checked );
От здесь :
if (RadioButtonList1.SelectedIndex > -1)
{
Label1.Text = "You selected: " + RadioButtonList1.SelectedItem.Text;
}
Для RadioButtonList только с двумя значениями «да» и «нет» я сделал следующее:
var chkval=document.getElemenById("rdnPosition_0")
Здесь rdnposition_0 относится к идентификатору да ListItem
. Получил, просмотрев исходный код формы.
Затем я выполнил chkval.checked, чтобы узнать, проверено ли значение «Да».