Почему эта версия JQuery не работает, а версия JavaScript работает? Я предпочитаю использовать JQuery. Любые ответы очень ценятся!
Razor Скрытое логическое поле:
@Html.HiddenFor(x => x.is_valid_number, new { @id = "is_valid_number"
});
JQuery (это не работает)
$("is_valid_number").val("True");
JavaScript (это работает)
document.getElementById('is_valid_number').value = "True";



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Селектор элемента, выбранного функцией document.getElementById("xyz"), становится #xyz. Так что попробуйте с $("#is_valid_number").val("True");, и это должно сработать.
Я бы посоветовал сильно прочитать о селекторах CSS, чтобы лучше понять, как они работают: https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors
getElementById в jQuery должен использовать "#", как это
$("#is_valid_number").val("True");
О, чувак... Я заметил этот отсутствующий "#" вскоре после того, как опубликовал это. Мелочи после 12+ часового рабочего дня. Извините, если это было лишним или что-то еще. Спасибо за ответы.
Поскольку is_Valid_number — это идентификатор, вы должны использовать это
$("#is_valid_number").val("True");
для идентификатора вы должны использовать # перед ним, а для класса используйте .(точка)
$("#is_valid_number").val("Истина");
Да, спасибо @Nisarg Shah, спасибо за быстрые ответы. Я пытался найти опцию «Отменить» на этом сайте, когда увидел отсутствующий «#» LOL.