2015-02-16 3 views
1

Я установил значение текстового поля в загрузку страницы и назначил его переменной в сценарии java. но эта строка не будет выполнена.cant получить значение текстового поля и поместить i в переменную в JavaScript

 y = document.getElementByID("<%= TextBox1.ClientID %>").value; 

это не работает, когда я устанавливаю значение текстового поля на странице aspx.

protected void Page_Load(object sender, EventArgs e) { 
TextBox1.Text = "14"; 
} 

и

<asp:TextBox ID="TextBox1" runat="server" Text="14"></asp:TextBox> 

ни один из них работал -------- здесь сценарий -----

 <script type="text/javascript"> 
           var map; 
           var y; 
        y = document.getElementByID("<%= TextBox1.ClientID %>").value; 
        y = parseInt(y); 

       require(["esri/map", "dojo/domReady!"], function (Map) { 

        esriConfig.defaults.map.panDuration = 1; 

         var map = new Map("map", { 
         center: [-118, y], 
         zoom: 15, 
         basemap: "satellite" 

        }); 
       }); 
      </script> 

, что я делаю неправильно? Все работает нормально, когда я просто назначаю y числу. Является ли это даже хорошей практикой для получения значений из asp-элементов управления?

+0

Как вы устанавливаете значение текстового поля? – void

+0

protected void Page_Load (отправитель объекта, EventArgs e) { TextBox1.Text = "14"; } и ни один из них не работал –

+0

Пожалуйста, обновите вопрос с помощью этого кода, его не читайте здесь. – void

ответ

1
"<%= TextBox1.ClientID %>" 

Это не оценивается, как вы думаете, оно просто отправит это как буквальную строку клиенту. Вместо этого вы должны сделать:

y = document.getElementByID("'" + <%= TextBox1.ClientID %> "'").value; 

Несмотря на это, это довольно уродливый код. Поскольку текстовое поле не является динамически созданным контулем, вы должны установить его значение ClientIDMode на Static или Predictable. Затем введите код ID в свой javascript.

+0

попробовал, не работал. Могла ли это быть главной страницей !? –

+0

@arvin вы можете проверить свою консоль в браузере на ошибки JavaScript? Вы проверили, что именно получаете с сервера? Я не могу просто догадаться, что случилось, «это не сработало», очень расплывчато. – MarioDS

+0

SyntaxError: missing) после списка аргументов --- строка 53-- это строка 53 y = document.getElementByID ("'" + TextBox1 "'") .value; –

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

  • Нет связанных вопросов^_^