2012-02-06 2 views
0

Я пытаюсь установить скрытое поле для «item_number» из Url QueryString для формы PayPal.Задайте значение для скрытого параметра из URL с помощью javascript

Так что URL будет выглядеть следующим образом "http://website.com/customize.aspx?item_number=FFFF"

и код:

<script language="javascript" type="text/javascript"> 
document.getElementById('item_number').Value = Request.QueryString('item_number'); 
</script> 

<input type="hidden" name="item_number" value=""> 

Но это не работает для меня. Что здесь не так ???? Есть ли способ лучше?

ответ

3

getElementById только находит элементы по их идентификатору. У вашего скрытого нет id из item_number; он имеет это имя, однако. Если вы добавите id="item_number" в ваш input, тогда код должен работать. Вам также необходимо перенести свой скрипт на после элемента DOM. В противном случае он будет работать до того, как в документе будет существовать input.

Update

Просто заметил еще одну ошибку. Вы устанавливаете свойство Value, а Request.QueryString('item_number') также недействительно. Похоже, вы смешиваете код ASP.NET с JavaScript. Правильное имя свойства для скрытого ввода - value (в нижнем регистре). В JavaScript нет эквивалента Request.QueryString. Скорее, чтобы извлечь значения строки запроса, see this answer для хорошего способа сделать это.

+0

woops !! спасибо за то, что заметили эти ошибки! Но я сделал то, что вы сказали, и все еще не работает ... должна быть другая проблема. –

+0

спасибо, я получил его сейчас. я не должен был предполагать, что Request.QueryString будет работать –