PDA

View Full Version : مبتدی: نحوه اجرای برنامه پس از زدن دکمه



negar442
پنج شنبه 30 بهمن 1393, 12:39 عصر
من یک سوال ساده دارم ؛ فرض کنید یک تکست باکس و یک دکمه دارم توی یک صفحه :




<input type="text" name="txtl" id="txtl"/> <button name="btnl" id="btnl" >افزودن</button>

حالا می خوام وقتی روی دکمه کلیک شد مقدار تکست باکس عوض بشه (مثلا مقدارش بشه 1) . فقط دو نکته :
یکی این که از سابمیت استفاده نکردم و نکته دوم این که از کدهای سمت کلاینت نمی خوام استفاده کنم! با asp.net این کار 10 ثانیه بیشتر طول نمی کشه ولی با php نمی دونم باید چی کار کرد؟

amin1softco
پنج شنبه 30 بهمن 1393, 13:25 عصر
ببنید نمی شه که نه سابمیت کنید نه جاوا اسکریپت بنویسید اگر بخواهید بره سمت سرور و مقدار بگیره باید در یک فرم به شکل post یا get ارسال بشه بعدش مقدار جدید جایگیزین و نمایش داده بشه...

Veteran
پنج شنبه 30 بهمن 1393, 13:45 عصر
از اسمون که نازل نمیشه!
Asp هم داره با همین جاوا اسکریپت کار میکنع و شما اطلاع نداری و یا نهایتا ایجکس هست که بازم سمت کلاینت ارسال میشه به سمت سرور و جوابش برگشت داده میشه.
اگر به زمان هم بخواید حساب کنید، ماهم میتونیم در این زمان کار رو انجام بدیم! البته یک تفاوتی وجود داره.
اینکه ما با علم و دانش و تجربه خودمون کار رو پیاده میکنیم و بر اون مسلطیم.نه اینکه با زدن یک دکمه این کارها در پشت صحنه انجام بشه و ما ندونیم که از چه قراره و بریم بقیه رو زیر سوال ببریم.

hamedarian2009
پنج شنبه 30 بهمن 1393, 14:59 عصر
این کار با رو با ای جکس باید انجام بدین توی asp.net هم همینکارو میکنه فقط شما نمی بینید

MMSHFE
پنج شنبه 30 بهمن 1393, 16:12 عصر
یکی این که از سابمیت استفاده نکردم و نکته دوم این که از کدهای سمت کلاینت نمی خوام استفاده کنم! با asp.net این کار 10 ثانیه بیشتر طول نمی کشه ولی با php نمی دونم باید چی کار کرد؟

این حرف شما مصداق بارز این حرفه که بارها گفتم: محیط Visual Studio نمیگذاره بفهمین کارها چطور داره انجام میشه و فکر میکنید روش کار همون دوتا کلیک هست که توی VS انجام میدین. همونطور که دوستان گفتن، یا باید فرم ارسال بشه و یا باید همونجا سمت کلاینت یکسری کارها انجام بشه که درنهایت باید از Javascript استفاده کنید. اگه بخواین فرم ارسال بشه ولی صفحه Refresh نشه (یا حتی فرم سابمیت نشه ولی فرضاً با کلیک روی یک دکمه، یه درخواست به سرور بره و برحسب جوابش یه کارهایی سمت کلاینت انجام بشه) باید از AJAX استفاده کنید. لطفاً مطالعه خودتون رو درخصوص نحوه انجام کارها در Web Application ها گسترش بدین و به اطلاعات سطحی که توی کار با ASP.NET و Visual Studio توی این موارد کسب کردین اکتفا و استناد نکنید.

negar442
پنج شنبه 30 بهمن 1393, 16:24 عصر
حالا 2 تا سوال برام پیش اومده؛ 1-اگه یک کاربر جاوا اسکریپت مرورگرش رو غیر فعال کنه دیگه asp.net کار نمی کنه؟
2- شما اگه بخواین کاری که در پست یک گفتم رو انجام بدین چه جوری انجام می دین؟

MMSHFE
پنج شنبه 30 بهمن 1393, 17:48 عصر
1- صددرصد کار نمیکنه (مگه اینکه فرم به روش معمولی سابمیت بشه). قرار نیست ASP.NET (یا هر زبان دیگه)، استانداردها و زیرساختهای وب رو تغییر بده.
2- یک مثال ساده که با کلیک روی دکمه، محتوای کادر متن رو 1 میکنه:

<input id="test" name="test" type="text" />
<button id="change" type="button" onclick="getElementById('test').value=1">Change</button>

H:Shojaei
پنج شنبه 30 بهمن 1393, 18:59 عصر
من یک سوال ساده دارم ؛ فرض کنید یک تکست باکس و یک دکمه دارم توی یک صفحه :




<input type="text" name="txtl" id="txtl"/> <button name="btnl" id="btnl" >افزودن</button>

حالا می خوام وقتی روی دکمه کلیک شد مقدار تکست باکس عوض بشه (مثلا مقدارش بشه 1) . فقط دو نکته :
یکی این که از سابمیت استفاده نکردم و نکته دوم این که از کدهای سمت کلاینت نمی خوام استفاده کنم! با asp.net این کار 10 ثانیه بیشتر طول نمی کشه ولی با php نمی دونم باید چی کار کرد؟

من توی زبان php یه کاری کردم که بدون این که شما تابعی تعریف کنید میتونید اون تابع رو صدا بزنید:


prt("متن جادویی قوانین زبان asp را زیر سوال برد.");

میبینید که من یه تابع رو فقط صدا زدمو هیچ کد دیگه ای هم تو این بلاک کد ندارم...
حالا این کار تو asp هم امکانش هست؟؟
.
.
.
.
.
.
.
.
.
.
.
.
.
.



function prt($val)
{
echo $val;
}

negar442
پنج شنبه 30 بهمن 1393, 19:13 عصر
الآن که دقت می کنم می بینم asp.net هم یک onclick به شکل خودکار اضافه می کنه یعنی در ابتدا کد ما اینجوریه:



<asp:Button ID="Button1" runat="server" Text="Button" />

که بعد از دابل کلیک بر روی باتن onclick هم بهش اضافه میشه یعنی میشه این:



<asp:Button ID="Button1" runat="server" onclick="Button1_Click1" Text="Button" />

فکر نمی کردم که این onclick مربوط به جاوااسکریپت باشه!

به هر حال ممنون از همه دوستان که پشت پرده ها رو برام رو کردند!