PDA

View Full Version : مشکل در استفاده از جاواسکریپت با asp.net



olkamiz
جمعه 07 تیر 1387, 18:07 عصر
من می خواهم از تابع window.open جاوا اسکریپت استفاده کنم.

function k()
{
window.open("olkamiz.com","mywindow")

}

حال تابع k را در onclick صدا می زنم . درست کار می کند .
حال من می خواهم پارمتر اول تابع window.open از تکست باکس 1 گرفته شود. در این حالت
در تابع می نویسم

function k()
{
window.open(textbox1.text,"mywindow")

}

ولی بازدن دکمه هیچ اتفاقی نم افتد؟

محمدامین شریفی
جمعه 07 تیر 1387, 18:39 عصر
من می خواهم از تابع window.open جاوا اسکریپت استفاده کنم.

function k()
{
window.open("olkamiz.com","mywindow")

}

حال تابع k را در onclick صدا می زنم . درست کار می کند .
حال من می خواهم پارمتر اول تابع window.open از تکست باکس 1 گرفته شود. در این حالت
در تابع می نویسم

function k()
{
window.open(textbox1.text,"mywindow")

}

ولی بازدن دکمه هیچ اتفاقی نم افتد؟
شما دارید با برنامه تحت کاربر کنترل زبان سمت سرویس دهنده را فراخوانی می کنید.

olkamiz
جمعه 07 تیر 1387, 19:03 عصر
کاری که من می خواهم انجام بدم گرفتن url از یکجا است حالا input باشه مسئله نیست . به هر روش ممکن. بعد هم این صفحه رو در یک پنجره جدید باز کنم. کاری که با دستور redirect نتونستم انجام بدم. توسط این دستو ر نشد که در یک صفحه جدید آدرس را باز کنم و در همون صفحه باز می شه. بعد فهمیدم که باید با جاوا اسکریپت انجام بدم.
حالا اگه شما روشی بلدید لطف کنید بگید

محمدامین شریفی
جمعه 07 تیر 1387, 21:16 عصر
کاری که من می خواهم انجام بدم گرفتن url از یکجا است حالا input باشه مسئله نیست . به هر روش ممکن. بعد هم این صفحه رو در یک پنجره جدید باز کنم. کاری که با دستور redirect نتونستم انجام بدم. توسط این دستو ر نشد که در یک صفحه جدید آدرس را باز کنم و در همون صفحه باز می شه. بعد فهمیدم که باید با جاوا اسکریپت انجام بدم.
حالا اگه شما روشی بلدید لطف کنید بگید
چرا که نگم داداشی
اینجوری یه متغیر را فراخوانی میکنند:


<html>
<head>
<script type="text/javascript">
function validate_email(field,alerttxt)
{
with (field)
{
apos=value.indexOf("@");
dotpos=value.lastIndexOf(".");
if (apos<1||dotpos-apos<2)
{alert(alerttxt);return false;}
else {return true;}
}
}
function validate_form(thisform)
{
with (thisform)
{
if (validate_email(email,"Not a valid e-mail address!")==false)
{email.focus();return false;}
}
}
</script>
</head>
<body>
<form action="submitpage.htm"
onsubmit="return validate_form(this);"
method="post">
Email: <input type="text" name="email" size="30">
<input type="submit" value="Submit">
</form>
</body>
</html>
بجای دکمه submitمی تونی input بزاری ولی جای this ،نام جعبه متن (name or id)را بنویس.
تاپیکت را هم به بخش html منتقل کن.
پیروز باشی

olkamiz
شنبه 08 تیر 1387, 15:41 عصر
خیلی ممنون . این مشکل رفع شد . ولی مشکل جدید ی پیش آمده .
راستش من می خواستم با گوگل سایتم را جستجو کنم. حالا کد نوشته شده و آماده است و لی اگر در اhtml این صفحه را باز کنی در جستجو همه ی نتایج جستجو را نشان می دهد ولی اگر در asp.net بگذاری عمل می کند ولی همه ی نتایج را نشان نمی دهد.

کد html:



<html> <HEAD>
<title>WebForm1</title>
<meta http-equiv="content-language" content="fa">
<script language="javascript">
function a(item)
{
window.open("http://www.google.com/search?as_q=" + item + "&hl=fa&num=10&lr=lang_fa&as_ft=i&as_qdr=all&as_occt=any&as_dt=i&as_sitesearch=www.olkamiz.com","olkamiz");
}
</script>
</HEAD><body>
<form id="Form1" method="post" runat="server">
<INPUT style="Z-INDEX: 102; LEFT: 48px; POSITION: absolute; TOP: 32px" type="text" name="k">
<INPUT style="Z-INDEX: 101; LEFT: 80px; POSITION: absolute; TOP: 88px" type="button" onclick='a(k.value);'
value="Button">
</form>
</body>
</html>



و کد ASP.NET من



<%@ Page Language="vb" AutoEventWireup="false" Codebehind="WebForm1.aspx.vb" Inherits="WebApplication7.WebForm1"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>WebForm1</title>
<META http-equiv="Content-Type" content="text/html; charset=windows-1256">
<meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" content="Visual Basic .NET 7.1">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta http-equiv="content-language" content="fa">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<script language="javascript">
function a(item)
{
window.open("http://www.google.com/search?as_q=" + item + "&hl=fa&num=10&lr=lang_fa&as_ft=i&as_qdr=all&as_occt=any&as_dt=i&as_sitesearch=www.olkamiz.com","olkamiz");
}
</script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<INPUT style="Z-INDEX: 102; LEFT: 48px; POSITION: absolute; TOP: 32px" type="text" name="k">
<INPUT style="Z-INDEX: 101; LEFT: 80px; POSITION: absolute; TOP: 88px" type="button" onclick='a(k.value);'
</form>
</body>
</HTML>




حال من نمی دانم چرا در دات نت این نتایج کامل نیست. به عنوان مثال کلمه ی لطیف ایزدی را سرچ می کنم . در HTML حدود 8 صفحه نتیجه می آورد ولی در ASP.NET فقط یک صفحه!!!
حال URL که توسط ASP.NET تولید می شود را کپی کرده و در یک صفحه جدید باز می کنم همه نتایج می آید؟!!!
پس مشکل از URL نیست.

محمدامین شریفی
جمعه 14 تیر 1387, 17:42 عصر
ببخشید که دیر شد .امتحانم دیشب تمام شد.
مشکلت حل شد؟

olkamiz
جمعه 14 تیر 1387, 23:32 عصر
بله مشکل حل شد.متشکرم. ولی مشکل جدیدی دارم
که در بالا ذکر کرده ام

محمدامین شریفی
شنبه 15 تیر 1387, 14:02 عصر
بله مشکل حل شد.متشکرم. ولی مشکل جدیدی دارم
که در بالا ذکر کرده ام
در واقع php و asp.net inline یک جور script نویسی است.به این معنی که درون کدهای html نوشته می شود ، و مشکلی در این کدها بوجود نمی آورد بلکه باعث راحت تر کردن و حرفه ای تر کردن کار می شود
می شود بپرسم شما برای چه اینکار را می خواهید بکنید؟

olkamiz
شنبه 15 تیر 1387, 21:56 عصر
من می خواهم یک دکمه جستجو همان طور که این سایت قرار داده ، در سایت خودم بذارم و با گوگل سایت خودم را جستجو کنم.
با html الان هم درست کار می کنه ولی وقتی همین Html رو در دات نت می گذارم همه ی نتایج رو نمی اره و فقط تعدادی از اونها رو میاره.
پس در حال حاظ از iframe استفاده می کنم و جستجو رو در سایت می گذارم. ولی می خوام بدونم جرا با استفاده مستقیم از کنتر ل های دات نت همه ی نتایج نمی اد. کد html , asp.net هر دو در بالا هستند خودتان می توانید ازمایش کنید