PDA

View Full Version : سوال: نوشتن كد html در رويداد دكمه



ITALIANMAN
چهارشنبه 01 خرداد 1392, 16:45 عصر
سلام
دوستان كسي ميدونه چجوري ميشه كد هايي رو كه تو محيط source در asp مينويسيم در رويداد يك دكمه بنويسيم

ساده تر بين كنم وقتي تو asp رو مثلآ دكمه دبل كليك ميكنيم ميريم تو محيط كد نويسي كه به زبان سي شارپ يا وي بي بايد توش كد بنويسيم
حالا سوال من اينجاست ايا راه كاري وجود داره كه تو اين محيط به جاي C# كداهاي HTML بنوسيم؟

meisam3322
چهارشنبه 01 خرداد 1392, 16:48 عصر
اون صفحه کد نویسی رو به اصطلاح Code Behind میگن. نه نمیشه ، مختص نوشتن کدهای سمت سرور هست

میلاد رئیسی
چهارشنبه 01 خرداد 1392, 17:38 عصر
سلام . دوست عزیز به سادگی آب خوردن این کار امکان پذیر هستش . شما باید کد html خودتون رو به صورت string نویسید و اونو به خاصیت text یک lable پاس بدید .
فراموش نکنید در کد های html ما از " " برای تعیین کلاس و بقیه استایل ها استفاده میکیم برای این که به صورت استرینگ کد های html رو بنویسیم باید به جای " " از ' ' استفاده کنیم .

مثال :

<div class="class1">
<div class="class2">

</div>
</div>

string str = "<div class='class1'>";
str += "<div class='class2'>";
str += "</div>";
str += "</div>";

ITALIANMAN
چهارشنبه 01 خرداد 1392, 18:05 عصر
سلام . دوست عزیز به سادگی آب خوردن این کار امکان پذیر هستش . شما باید کد html خودتون رو به صورت string نویسید و اونو به خاصیت text یک lable پاس بدید .
فراموش نکنید در کد های html ما از " " برای تعیین کلاس و بقیه استایل ها استفاده میکیم برای این که به صورت استرینگ کد های html رو بنویسیم باید به جای " " از ' ' استفاده کنیم .

مثال :

<div class="class1">
<div class="class2">

</div>
</div> string str = "<div class='class1'>";
str += "<div class='class2'>";
str += "</div>";
str += "</div>";
بعد از اين بايد چيكار كرد دوست عزيز؟
چون مثلآ من تو كد html يه جدول و تكست باكس اضافه كردم ولي اضافه نشد

میلاد رئیسی
چهارشنبه 01 خرداد 1392, 18:22 عصر
خب یه ldble روی صفحه بزارید و این استرینگ رو به خاصیت تکست اون بفرستید .
شما به هر چیزی رو میتونی با این روش بسازی .

lable1.text=str;

ITALIANMAN
چهارشنبه 01 خرداد 1392, 19:28 عصر
ممنون حل شد ولي هنوز يه مشكلي هست وقتي با اين دستور جدول ميسازي ساخته ميشه ولي وقتي يه چك باكس يا چيز ديگه اضافه ميكني ديده نميشه نميدونم چرا

tree1371
چهارشنبه 01 خرداد 1392, 19:41 عصر
شما می تونید همه رو در یک خط بنویسید . با / نیز کاراکترهای غیر مجاز رو در کد بیهایند بتونید ثبن کنید باید قبلش بزارید . مثل : lbl.text = " <div> HARCHIZI <//div>"

شما باید text box هم توی یک دیو بزارید و با دستورات css اون رو درست کنید.

khorsandreza
پنج شنبه 02 خرداد 1392, 00:46 صبح
با استفاده از دستور زیر مینونی مشکلت را حل کنی

Controls.Add(new LiteralControl("<div style=\"line-height: 15px\">&nbsp;</div>"));

forestasphalt
پنج شنبه 02 خرداد 1392, 09:05 صبح
از HtmlAnchor برای تگ a و از TagBuilder برای هر نوع تگی میتونی استفاده کنی واز .Controls.Add که برای عنصری وجود داره میتونی استفاده کنی
این روش بهتره چون هم خود ماکروسافت برای استفاده توی این موارد در نظر گرفتته اش هم اشتباه تایپی توش وجود نداره(هر کدوم توی گوگل جستجو کنی نتایج خوبی پیدا میکنی)