попробуйте это: -
<div class="controls col-lg-2 col-md-2 col-sm-2 col-xs-2">
<span class="req"> *</span><label class="checkbox-inline" for="genderCBs"><input type="checkbox" class="gender" value="M" id="genderMale" name="genderCBs[]">Male</label>
<label class="checkbox-inline" for="genderCBs"><input type="checkbox" class="gender" value="F" id="genderFemale" name="genderCBs[]">Female</label>
</div>
alert(4);
var gender = '';
if ($('#genderMale').prop('checked') === true){
alert(5);
gender = "M"
}else{
alert(6);
gender = "F"
}
У нас была ситуация, когда нам нужно было сохранить хэш URL-адреса в задних частях сообщений ASP.Net. Поскольку браузер по умолчанию не отправляет хэш на сервер, единственный способ сделать это - использовать некоторый Javascript:
Когда форма отправляется, возьмите хеш ( window.location.hash
) и сохраните его в скрытом поле ввода на стороне сервера. Поместите это в DIV с идентификатором « urlhash
», чтобы мы могли легко найти его позже.
На сервере вы можете использовать это значение, если с ним нужно что-то делать. Вы даже можете изменить его, если вам нужно.
При загрузке страницы на клиенте проверьте значение этого скрытого поля. Вы захотите найти его по DIV, в котором он содержится, поскольку автоматически сгенерированный идентификатор не будет известен. Да, вы можете проделать здесь некоторые трюки с .ClientID, но мы обнаружили, что проще просто использовать оболочку DIV, поскольку она позволяет всему этому Javascript жить во внешнем файле и использоваться в общем виде.
Если скрытое поле ввода имеет допустимое значение, установите его как хэш URL ( window.location.hash снова
) и / или выполните другие действия.
Мы использовали jQuery для упрощения выбора поля и т. д. ... в итоге получается несколько вызовов jQuery, один для сохранения значения, а другой для его восстановления.
Перед отправкой:
$("form").submit(function() {
$("input", "#urlhash").val(window.location.hash);
});
При загрузке страницы:
var hashVal = $("input", "#urlhash").val();
if (IsHashValid(hashVal)) {
window.location.hash = hashVal;
}
IsHashValid ()
может проверьте наличие « undefined
»
Раздел RFC 2396 4.1:
Когда ссылка URI используется для выполнения действия извлечения с определенным ресурсом, дополнительный идентификатор фрагмента, разделенный от URI штриховкой (" # ") символ, состоит из дополнительной справочной информации, которая будет интерпретироваться агентом пользователя после того, как действие извлечения было успешно завершено. По сути, это не часть URI, но часто используется в сочетании с URI.
(добавленный акцент)
Вероятно, единственный выбор состоит в том, чтобы считать его на стороне клиента и передать, это вручную к серверу (ДОБИРАТЬСЯ/POST/AJAX). Отношения Artur
Можно видеть также, как играть с кнопкой "Назад" и историей браузера в Malcan
Поэтому браузер не передает ту часть к серверу, извините.
Только для исключения возможности Вы на самом деле не пытаетесь видеть фрагмент на ПОЛУЧЕНИИ/POST и на самом деле хотеть знать, как получить доступ к той части объекта URI, который Вы имеете в рамках своего серверного кода, это находится под контролем Uri. Фрагмент (документы MSDN).