?

Log in

Tyaps ASP [entries|archive|friends|userinfo]
Программирование в ASP.Net

[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Как сделать padding в option [Aug. 17th, 2011|04:23 pm]
Программирование в ASP.Net

tyaps
[Tags|, , ]

Да никак. (padding для option-ов поддерживает только FF)
В итоге вставляем в текст пробелы.
С javascript / jquery это можно сделать так

var emulatePaddingSymbol = '\u00A0';

 realSelect.find("option").each(function () {
$(this).text(emulatePaddingSymbol + $(this).text());
});
linkpost comment

UpdatePanel - доп возможности [Jul. 13th, 2011|09:22 am]
Программирование в ASP.Net

tyaps
[Tags|, , ]

http://msdn.microsoft.com/ru-ru/library/bb397432%28v=vs.90%29.aspx - beginRequest и endRequest - javascript-ы

В Telerik updatePanel есть свойства - какие js-функции запускать при начале/конце асинхронного запроса панели.
В микрософтовской updatePanel это надо делать отдельным образом.


<script type="text/javascript" language="javascript">
        Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(BeginRequestHandler);
        Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
        function BeginRequestHandler(sender, args)
        {
           var elem = args.get_postBackElement();
           ActivateAlertDiv('visible', 'AlertDiv', elem.value + ' processing...');
        }
        function EndRequestHandler(sender, args)
        {
           ActivateAlertDiv('hidden', 'AlertDiv', '');
        }
        function ActivateAlertDiv(visstring, elem, msg)
        {
           var adiv = $get(elem);
           adiv.style.visibility = visstring;
           adiv.innerHTML = msg;          
        }
      </script>


* This source code was highlighted with Source Code Highlighter.
linkpost comment

For XML и 2034 символа [Jul. 7th, 2011|03:54 pm]
Программирование в ASP.Net

tyaps
[Tags|, ]

Наблюдение.
Если забираешь с помощью cmd.ExecuteScalar();

результат запроса типа

select id, name from t1
for xml auto, root('root')


* This source code was highlighted with Source Code Highlighter.


то получаешь только первые 2034 символа.

Что тут можно сделать?
Read more...Collapse )
link2 comments|post comment

Пара полезных функций jquery [May. 11th, 2011|05:54 pm]
Программирование в ASP.Net

tyaps
[Tags|]

Отсюда: http://webformyself.com/20-poleznyx-metodov-jquery/

Вкратце (что мне понравилось):

1. .data()
2. .get()
3. .grep()
Read more...Collapse )
linkpost comment

JSON Serialization [May. 11th, 2011|05:42 pm]
Программирование в ASP.Net

tyaps
[Tags|, , ]

Представим, что в html-е нам нужен массив данных для использования в javascript. Причем, это не просто int-массив, а массив неких структур.

Можно рендерить его вручную самыми разными способами, а можно поюзать json-вариант.

using System.Web.Script.Serialization;

List cl = new List(); //какой-то мой класс
cl.Add(.....);

JavaScriptSerializer js = new JavaScriptSerializer();
string Json = js.Serialize(MyArray);

и дальше, в aspx-е можно просто делать
var myJson= <%=Json %>;

alert(myJson[0].myProperty1)

Эта штука конвертит все свойства заданного объекта в json-схему. В js.Serialize можно загонять объект с достаточно сложными свойствами, и он его будет парсить

Ну а если целиком объект не нужно вытаскивать, а только отдельные свойства, то можно linq-ом его сделать так

string Json = js.Serialize(MyArray.Select(c => new { Id = c.Id, Value = c.Value })); --то бишь, загоняю массив объектов только что сгенеренного безымянного класса. Имя класса мне нафиг не нужно. Не плодим сущности.
linkpost comment

COALESCE [May. 4th, 2011|10:30 am]
Программирование в ASP.Net

tyaps
[Tags|]

Интересная SQL функция COALESCE. Раньше как-то не встречал.

COALESCE(expression1, expression2, expressionN)

работает как

CASE
WHEN (expression1 IS NOT NULL) THEN expression1
...
WHEN (expressionN IS NOT NULL) THEN expressionN
ELSE NULL
END

- продвинутый isnull()
link2 comments|post comment

Версия IE (Javascript) и инструкция debugger [Apr. 7th, 2011|12:26 pm]
Программирование в ASP.Net

tyaps
[Tags|, ]

Тоже полезняшка - в копилочку.

function vIE()
{
return (navigator.appName=='Microsoft Internet Explorer')?parseFloat((new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})")).exec(navigator.userAgent)[1]):-1;
}

//to get the right version of IE (or -1 for the rest of browsers)

---

А еще, оказывается, есть такая штука.
Если в теле javascript-е написать команду

debugger;

то в этой точке браузер позовет вас на дэбаг. Не знал. Раньше я только брейкпоинтами это дело ловил.
linkpost comment

сконвертировать URL в тексте в A HREF [Apr. 7th, 2011|12:07 pm]
Программирование в ASP.Net

tyaps
[Tags|, ]

Нашел полезняшку. Когда пользователь пишет сообщение, в котором фигурируют URL-и, то мы можем запросто их отработать и превратить в a href.

Завидую людям, которые умеют писать мега-regex выражения.


using System.Text.RegularExpressions;

public static string ReplaceUrlsToLinks(string msg)
{
string regex = @"((www\.|(http|https|ftp|news|file)+\:\/\/)[_.a-z0-9-]+\.[a-z0-9\/_:@=.+?,##%&~-]*[^.|\'|\# |!|\(|?|,| |>|<|;|\)])";

Regex r = new Regex(regex, RegexOptions.IgnoreCase);
return r.Replace(msg, "< a href=\"$1\" title=\"Click to open in a new window or tab\" target=\"_blank\">$1</a>").Replace("href=\"www", "href=\"http://www");
}

P.S. Есть встраиваемая в VS фича - RegEx Editor, позволяющая генерировать regexp выражения
http://visualstudiogallery.msdn.microsoft.com/55c24bf1-2636-4f94-831d-28db8505ce00
link6 comments|post comment

Преимущества yield return [Mar. 24th, 2011|05:53 pm]
Программирование в ASP.Net

tyaps
Есть такая штука прикольная, как конструкция yield return
Если ваш метод возвращает IEnumerable, то можно делать вот такие вещи

private IEnumerable getSomeEnum()
{
int i = 1;
yield return i;
i = 2;
yield return i;
yield return 3;
}

т.е. не надо ничего объявлять, а возвращаемый IEnumerable-результат генерится как-бы сам, по ходу дела.
Но преимущество-то здесь не в этом. Здесь тема в отложенном выполнении и получении очередного результата yield return только в момент соответствующей итерации foreach.
Read more...Collapse )
link2 comments|post comment

SQL удалить время из datetime [Mar. 24th, 2011|04:09 pm]
Программирование в ASP.Net

tyaps
[Tags|]

select dateadd(day, datediff(day, 0, GetDate()), 0) - дает чисто дату.

-ооо, какая штука!
Взято отсюда: http://www.flenov.info/blog.php?catid=879
linkpost comment

navigation
[ viewing | 10 entries back ]
[ go | earlier/later ]