Используемый вами ввод является тегом ввода HTML.Чтобы ASP.NET мог видеть этот тег, необходимо включить атрибут runat = "server".Это покажет ASP.NET, что он должен отслеживать тег, и вы сможете взаимодействовать с ним из своего кода.Без этого тега ASP.NET не знает об элементе управления и, следовательно, он не отображается при вызове FindControl.
Обратите внимание, что при информировании ASP.NET об элементе управления он может изменить идентификатор,Это так, что ASP.NET гарантирует, что каждый элемент управления имеет уникальный идентификатор.В вашем примере есть элемент управления в GridView, поэтому идентификатор элемента управления вводом будет изменен так, чтобы ASP.NET знал, что этот элемент управления является дочерним по отношению к GridView.Вам нужно будет изменить любой сценарий на стороне клиента, чтобы знать новый идентификатор.Я рекомендую не проверять идентификатор в HTML, а затем просто назначать новый идентификатор, так как изменения структуры ASP.NET могут изменить идентификатор.В своем комментарии вы упомянули, что используете jQuery.Я бы порекомендовал использовать класс, а jQuery назначил элемент управления на основе класса элемента управления вводом.