Значение Jquery для ввода

У меня есть следующее поле ввода

<input type="text" name="location[state_id]" id="location[state_id]" value="" >

и я пытаюсь назначить там значение со следующим jquery

$("#location\\[state_id\\]").val("5");

но он не работает! Он работает только в том случае, если имя и то и другое - это только местоположение.

Спасибо

Ответ 1

Поскольку # - это селектор идентификаторов, вы можете попытаться установить идентификатор ввода в действительный идентификатор CSS и указать имя ввода одинаково (я предполагаю, что этот формат требуется для какой-либо структуры). Например, HTML может выглядеть так:

<input type="text" id="location_state_id" name="location[state_id]" value="" />

и выражение jQuery:

$('#location_state_id').val('5');

Ответ 2

попробуйте это

<input type="text" name="location[state_id]"class="input" id="location[state_id]" value="" >

$(".input").val("5");

или

вы можете использовать короткий ответ:

$("input[name='location[state_id]'").val("5");

Ответ 3

Если вы хотите использовать name как часть селектора, вы можете использовать следующий селектор:

$("input[name='location[state_id]'").val("5");

Демо

Ответ 4

JQuery

$('input[name="location[state_id]"]').val(5);