PDA

View Full Version : گفتگو: چه جوری میشه با کلیک بر روی یک دکمه یا عکس یا هر چیزی یه تابع اجرا بشه ؟



djscsi
یک شنبه 17 شهریور 1387, 03:15 صبح
چه جوری میشه با کلیک بر روی یک دکمه یا عکس یا هر چیزی یه تابع اجرا بشه ؟
یعنی منظورم اینه که بگیم با کلیک بر روی فلان دکمه فلان تابع اجرا بشه
ایا جواب onmouseclick ه؟
ممنون

djscsi
یک شنبه 17 شهریور 1387, 03:23 صبح
ببخشید یادم رفت بپرسم اگه تابع تو یه صفحه دیگه بود چی؟منظورم یه راه حل به جز استفاده از include هست
لطفا اگه میشه یه مثال بزنید
ممنون

bigcowboy
یک شنبه 17 شهریور 1387, 03:27 صبح
اگه آني بخواي اجرا بشه بايد از ajax استفاده كني
اگه نه با يه فرم مشكل حله!(صفحه دوباره لود ميشه)

as13851365
یک شنبه 17 شهریور 1387, 08:07 صبح
شما مثلا تابعی با نام message دارید و یک دکمه روی صفحه قرار می دهید و می خواهید که با کلیک کردن روی این دکمه این تابع اجرا بشه !
من کد زیر رو نوشتم


<script language="javascript" type="text/javascript">
function message()
{
alert('message');
}
function message1(s)
{
alert(s);
}
</script>
<input type="button" value="اجراء" onclick="message()" /><br />
<input type="button" value="اجراء" onclick="message1('message1')" />

Lagon666
یک شنبه 17 شهریور 1387, 08:31 صبح
فکر کنم اینجا بخش PHP باشه. حالا چرا با جاوا اسکریپت پاسخ داده شده معلوم نیست.


چه جوری میشه با کلیک بر روی یک دکمه یا عکس یا هر چیزی یه تابع اجرا بشه ؟
یعنی منظورم اینه که بگیم با کلیک بر روی فلان دکمه فلان تابع اجرا بشه
ایا جواب onmouseclick ه؟
ممنون

هیچ وقت نمیشه با کلیک کردن روی یه لینک یه تابع PHP اجرا بشه (البته فعلا) مگر اینکه یا صفحه ی شما از نو Load بشه یا با کمک AJAX درخواستتون به اون صفحه فرستاده بشه.

bigcowboy
یک شنبه 17 شهریور 1387, 11:43 صبح
البته قبلا يه چيزي اومد به اسم cjax (http://www.google.com/search?q=cjax) كه اين كارو ميكرد نميدونم هنوزم باشه يانه

djscsi
یک شنبه 17 شهریور 1387, 20:45 عصر
ممنون من دارم می روم اون script رو امتحان کنم حالا اگه کسی بیتونه همونو با ajax بنویسه ممنون میشم

djscsi
دوشنبه 18 شهریور 1387, 23:55 عصر
شما مثلا تابعی با نام message دارید و یک دکمه روی صفحه قرار می دهید و می خواهید که با کلیک کردن روی این دکمه این تابع اجرا بشه !
من کد زیر رو نوشتم
کد:
<script language="javascript" type="text/javascript">
function message()
{
alert('message');
}
function message1(s)
{
alert(s);
}
</script>
<input type="button" value="اجراء" onclick="message()" /><br />
<input type="button" value="اجراء" onclick="message1('message1')" />
من می خام یه ادیتور ساده طراحی کنم مثل همین ولی فقط 2 تا دکمه داشته باشه یکیش کارش اینه که یه پنجره باز شه و ادرسی رو بگیره بعد اون رو به ادامه چیزهای نوشته شده تو یه texteara اضافه کنه
ممنون میشم کمکم کنید

as13851365
سه شنبه 19 شهریور 1387, 10:34 صبح
من می خام یه ادیتور ساده طراحی کنم مثل همین ولی فقط 2 تا دکمه داشته باشه یکیش کارش اینه که یه پنجره باز شه و ادرسی رو بگیره بعد اون رو به ادامه چیزهای نوشته شده تو یه texteara اضافه کنه
ممنون میشم کمکم کنید

برای این کار شما باید از دستورات جاوااسکریپت استفاده کنید!
با جاوااسکریپت آیدی مربوط به textarea رو بگیر و محتویاتش را + آدرس کن و دوباره در خود textarea قرار بده

برای دریافت لینک هم می تونید از تابع prompt استفاده کن و این مقدار رو به تابع جاوااسکریپی که نوشتی بفرست و در اونجا مقدار رو اضافه کن

Lagon666
سه شنبه 19 شهریور 1387, 11:06 صبح
<script>
function AddURL(){
var url = prompt("Enter URL:", "")
if(url!=""){
document.getElementById('text').value+="" + url + "";
}
}
</script>
<button onclick="AddURL();">Add URL</button>
<br>
<textarea id="text" rows="10" cols="40"></textarea>

djscsi
چهارشنبه 20 شهریور 1387, 01:17 صبح
با جاوااسکریپت آیدی مربوط به textarea رو بگیر و محتویاتش را + آدرس کن و دوباره در خود textarea قرار بده

برای دریافت لینک هم می تونید از تابع prompt استفاده کن و این مقدار رو به تابع جاوااسکریپی که نوشتی بفرست و در اونجا مقدار رو اضافه کن
من جاوا خیلی کار نکردم
دومیشو که lagon اقا زحمتشو کشیدن در مورد اولی میشه کدشو بنویسی
ممنون

Lagon666
چهارشنبه 20 شهریور 1387, 04:58 صبح
اولیش چیه؟

djscsi
چهارشنبه 20 شهریور 1387, 22:59 عصر
اولیش چیه؟
ممنون اولیشم حل شد یعنی فهمیدم فقط یه مشکل بد پیش اومده اون textarea تو یه فرم هست اگه button رو بیرون فرم بزارم اصلا چیزی اضافه نمیشه اگه تو فرم (منظورم بین <form>و </form> هست) که فرم اجرا میشه حالا چه کار کنم؟
ممنون

Lagon666
چهارشنبه 20 شهریور 1387, 23:42 عصر
<script>
function AddURL(){
var url = prompt("Enter URL:", "")
if(url!=""){
FORM_NAME.getElementById('text').value+="" + url + "";
}
}
</script>
<button onclick="AddURL();">Add URL</button>
<br>
<textarea id="text" rows="10" cols="40"></textarea>

djscsi
پنج شنبه 21 شهریور 1387, 00:35 صبح
دوست من بازم مشکلم حل نشد چه button رو بیرون از بform بزارم چه داخل کار نمیکنه
اسم formم هم form1 هست اینو گفتم که نگید به جای form_name باید اسم فورم می نوشتی

Lagon666
پنج شنبه 21 شهریور 1387, 05:19 صبح
اگه میخوای، تکه کدتو بزار اینجا شاید کاری از دستمون بر اومد.

djscsi
جمعه 22 شهریور 1387, 01:38 صبح
<?php
//@session_start();
//include('reg.php');
//logg();
?>

<html>
<script>
function AddURL(){
var url = prompt("Enter URL:", "")
if(url!=""){
form1.getElementById('text').value+="" + url + "";
}
}
</script>


<body bgcolor="red">
<center>
<br><br>
<table cellpadding = 0 cellspacing = 0 border = 7 width = 580>
<form action = index.php method = post name=form1>
<button onclick="AddURL();">Add URL</button>
<tr>
<td bgcolor = "#cccccc">
POST Title:
</td>

<td bgcolor = "#cccccc">
<input type = text name = sub size = 70 maxlength = 200></td>
</tr>
<tr>
<td colspan = 2 ><font style=tahoma>
<textarea name = tx rows = 10 cols = 68 ></textarea>
</td>
</tr>

<tr>
<td colspan = 2 align = center bgcolor = "#cccccc">
<input type = image name = post src = "images/post.gif" width = 99 height = 39>
</td>
<input type = hidden name = parent value = 0 >
<input type = hidden name = area value = 1 >
</tr>

</form>

</table>
</body></html>
ممنون دوست عزیز

Lagon666
جمعه 22 شهریور 1387, 07:54 صبح
دوست عزیز، کد نویسیت یکم مشکل داشت. خودت فرق دو کد رو متوجه خواهی شد.

اما در مورد getElementById:
داره میگه گرفتن عنصر با Id، نه با Name. البته getElementByName هم داریم. پس باید یه عنصری باشه که Id ش همون چیزی باشه که تو اسکریپت هست. توی کد شما هیچ المنتی با Id ی text نبود. بلکه tx بود.


<html>
<script>
function AddURL(){
var url=prompt("Enter URL:", "")
if(url!=""){
document.getElementById('text').value+=url;
}
}
</script>

<body bgcolor="red">
<center><br><br>
<table cellpadding="0" cellspacing="0" border="7" width="580">
<form action="index.php" method="post" name="form1">
<button onclick="AddURL();">Add URL</button>
<tr>
<td bgcolor="#cccccc">POST Title:</td>
<td bgcolor="#cccccc"><input type="text" name="sub" size="70" maxlength="200"></td>
</tr>
<tr>
<td colspan="2"><font style="tahoma"><textarea id="text" rows="10" cols="68"></textarea></td>
</tr>
<tr>
<td colspan="2" align="center" bgcolor="#cccccc"><input type="image" name="post" src="images/post.gif" width="99" height="39"></td>
<input type="hidden" name="parent" value="0">
<input type="hidden" name="area" value="1" >
</tr>
</form>
</table>
</body>
</html>

djscsi
شنبه 23 شهریور 1387, 02:31 صبح
یه نگاه به این بنداز
<?php
//@session_start();
//include('reg.php');
//logg();
?>
<html>

<script>
function AddURL(){
var url = prompt("Enter URL:", "")
if(url!=""){
form1.getElementById('text').value+="" + url + "";
}
}
</script>

<body bgcolor="red">
<center>
<br><br>
<table cellpadding = 0 cellspacing = 0 border = 7 width = 580>
<form action=index.php method=post name=form1>
<button onclick="AddURL();">Add URL</button>
<tr>
<td bgcolor = "#cccccc">
POST Title:
</td>

<td bgcolor = "#cccccc">
<input name = sub size = 70 maxlength = 200></td>
</tr>
<tr>
<td colspan = 2 ><font style=tahoma>
<textarea id=text rows=10 cols=68 ></textarea>
</td>
</tr>

<tr>
<td colspan = 2 align = center bgcolor = "#cccccc">
<input type=submit width = 99 height = 39 value="ارسال پست جديد">
</td>
<input type = hidden name = parent value = 0 >
<input type = hidden name = area value = 1 >
</tr>
</form>
</table>
</body></html>
میشه شما این رو تو localhost خودتون اجرا کنید ببینید میشه یا نه
من امتحان کردم نشد
ممنون

as13851365
شنبه 23 شهریور 1387, 09:17 صبح
این کد رو تغییر بده

document.getElementById('text').value+="" + url + "";