ASP.NET Query string второе значение - PullRequest
0 голосов
/ 03 ноября 2011

У меня есть сетка с кнопкой ссылки и на RowDatabound:

lbutton.Attributes.Add("onclick",
    "javascript:window.showModalDialog('Showsome.aspx?ID=" + lbutton.CommandArgument + " &IsMA=M" +
    "','window.self','dialogWidth:800px; dialogHeight:800px;center:yes; status:yes; scroll:no; help:no');");

Я могу получить идентификатор из Request.QueryString["ID"]; Однако я не могу получить Request.QueryString["IsMA"]

Как этого достичь?

Я попробовал предложения, больше не было пробелов и сделал кодирование URL, и я не получаю значение правильно. У меня есть другой подход, так как это жестко закодированное значение 'M', которое необходимо добавить к значению, которое я сейчас добавляю в само значение ID 'Showsome.aspx?ID=M". Спасибо за вашу поддержку.

Ответы [ 2 ]

1 голос
/ 03 ноября 2011

Theres пространство между CommandArgument и &IsMA

Может ли это быть причиной вашей проблемы?

Попробуйте:

+ lbutton.CommandArgument + "&IsMA=M"

Что такое CommandArgument значение? Возможно, вам придется закодировать это. Я бы порекомендовал сделать это в любом случае.

+ Server.UrlEncode(lbutton.CommandArgument) + "&IsMA=M"
1 голос
/ 03 ноября 2011

Попробуйте удалить пробел перед символом амперсанда:

lbutton.CommandArgument + "&IsMA=M"

РЕДАКТИРОВАТЬ: Как SLaks указывает ниже, экранирование символа амперсанда не является необходимым. Соответственно, документация для Attributes.Add() гласит:

Если строка в параметре value содержит амперсанд (&), символ автоматически кодируется. Полученное представление HTML это "&".

...