2012-06-21 1 views
1

У меня есть приложение framework asp.net 4.0, которое состоит из Masterpage и контент-сайтов. У меня есть файл .js, который выполняет проверки данных, введенных пользователем. Как я могу вызвать текстовое поле «txtFirstName» (из файла .js), которое находится в ContentPlaceHodler «cphBody»?Использование javascript для получения значения текстового поля в главной странице ContentPlaceHolders

Update (код):
.aspx

<asp:TextBox id="txtFirstName" runat="server" CssClass="webForm" Width="250px" MaxLength="100"></asp:TextBox> 

<asp:Button id="btnContinue" runat="server" ClientIDMode="Static" onclientclick="document.getElementById('cphHeaderContent_AlertTimeMsgBox').value = GetSeconds(); return ValidateUser(1);" CssClass="webButton" Text="Continue" OnClick="btnContinue_Click" /> 

.js

function ValidateUser(valFormCount) 
{ 
    var objTextBox; 

    objTextBox = document.getElementById("txtFirstName"); 

я пытался document.getElementById("<%= txtFirstName.ClientID %>"), но это не работает (нулевое значение передается). Как я могу это сделать?

+0

Вы используете jquery? –

+0

@ClaudioRedi Не все должно быть jQuery ... – TheZ

+0

@ClaudioRedi ..... Нет ... это было бы слишком легко – DotNetRookie

ответ

6

Это asp.net обозначение

document.getElementById("<%= txtFirstName.ClientID %>") 

не действует внутри JS файл

Вы можете установить ClientIDMode="Static" для TextBox. Если вы сделаете это, вы будете иметь возможность получить элемент по идентификатору с этим

ASPX

<asp:TextBox ID="txtFirstName" runat="server" ClientIDMode="Static" /> 

JS

var textbox = document.getElementById("txtFirstName"); 

О ClientIDMode="Static"

Этот режим делает именно то, что, по вашему мнению, будет, он делает идентификатор клиентской стороны статическим. Это означает, что то, что вы указали для идентификатора, будет использоваться для идентификатора стороны клиента. Предупреждение. Это означает, что если статический ClientIDMode используется в повторяющемся элементе управления, разработчик отвечает за уникальность уникальности идентификатора клиента.

+0

Все еще получаю null после попытки вашего предложения – DotNetRookie

+0

@DotNetRookie: не могли бы вы показать свой соответствующий код? –

+0

@DotNetRookie: убедитесь, что вы вызываете getElementById, когда элемент уже добавлен в DOM. –

Смежные вопросы