PDA

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



soheilnew
سه شنبه 04 آبان 1395, 15:22 عصر
سلام دوستان عزیز
چطور میشه در وب بروزر سی شارپ وقتی یه صفحه ای رو باز میکنیم اگه یه متن خاصی که قبلا تعریف کردیم بود سریع روی یه دکمه کامند کلیک کنه
مثلا در وب بروزر میرسیم به صفحه ای که توش نوشته : محصولی جهت نمایش وجود ندارد.
به محض باز شدن این صفحه روی یه دکمه کامند کلیک کنه

soheilnew
چهارشنبه 05 آبان 1395, 12:14 عصر
دوستان ببخشید که اسپم میدم ولی ضروریه برای همین
سایت و منبع خارجی هم پیدا نکردم که در این زمینه مطلبی داشته باشه

pouria76
چهارشنبه 05 آبان 1395, 13:44 عصر
سلام
شما باید داخل سورس تکست صفحه لغت به لغت جستجو کنی، وقتی به متن مورد نظر رسیدی هر عملی رو می تونی اجرا کنی.

soheilnew
چهارشنبه 05 آبان 1395, 16:07 عصر
سلام
شما باید داخل سورس تکست صفحه لغت به لغت جستجو کنی، وقتی به متن مورد نظر رسیدی هر عملی رو می تونی اجرا کنی.

کد صفحه اینه :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>کد </title>
<meta name="script" content="http://www.maker.ir" />
<meta name="copyright" content="Ali Karimabadi - akarimabadi@gmail.com - http://www.maker.ir" />
<style>
body{font-size:13px;color:#000000;font-family:tahoma;direction:rtl;text-align:right;background-color:#f9f9f9;}
</style>
</head>
<body>

<table>
<tr><td><b> دریافت کد پست ثابت </b></td></tr>
<tr><td><textarea style="width:550px;height:100px" dir="ltr" onfocus="this.select();">محصولی جهت نمایش وجود ندارد.</textarea></td></tr>
<tr><td><b>پیش نمایش</b></td></tr>
<tr><td>محصولی جهت نمایش وجود ندارد.</td></tr>
</table>
</body>
</html>



برای این میشه؟

pouria76
چهارشنبه 05 آبان 1395, 16:41 عصر
بله.
شما باید یه حلقه تعریف کنی که کاراکتر به کاراکتر این متن رو برسی کنه و با تکست شما چک کنه.
برای مثال:


public int search(string text , string str)
{
string s1 = text;
string s2 = str;
int i;
for (i = 0; i < s1.Length - s2.Length; i++)
{
if (s1.Substring(i, s2.Length) == s2)
break;
}
return i;
}

به مقدار اول تابع فوق متن مورد نظر را بدید و مقدار دوم رو کلمه مورد نظر، اونوقت index شروع کلمه مورد نظرتون داخل تسکست رو برمیگردونه.
نحوه فراخوانی:


search(richTextBox1.Text,"پیش نمایش");
یا
MessageBox.Show(search(richTextBox1.Text,"پیش نمایش").ToString());

خروجی با توجه به متن خودتون:


849

soheilnew
چهارشنبه 05 آبان 1395, 20:44 عصر
ممنون دوست عزیز ولی من هیچی نفهمیدم از این
من میخوام بدون تکست یه مقدار مشخصی بدم که از قبل معلومه و اینه :
محصولی جهت نمایش وجود ندارد.

حالا میخوام با باز شدن لینک در وب بروزر اگه این متن توش بود روی دکه کامند کلیک کنه

336699
چهارشنبه 05 آبان 1395, 23:45 عصر
سلام
در کد html ، دکمه کامند رو نمیبینم

بهتره ادرس صفحه رو بدین

soheilnew
پنج شنبه 06 آبان 1395, 10:57 صبح
سلام
در کد html ، دکمه کامند رو نمیبینم

بهتره ادرس صفحه رو بدین

دوست عزیز من نمیخوام که روی صفحه روی چیزی کلیک کنم
میخوام وقتی در داخل صفحه اگخ متن : محصولی جهت نمایش وجود ندارد. وجود داشت روی فرم برنامه رویه یک دکمه کلیک کنید مثلا کامند باتن 1 کلیک کنه

pouria76
پنج شنبه 06 آبان 1395, 12:06 عصر
string s1 = richTextBox1.Text;
string s2 = "محصولی جهت نمایش وجود ندارد";
int i;
for (i = 0; i < s1.Length - s2.Length; i++)
{
if (s1.Substring(i, s2.Length) == s2)
{
button2.PerformClick();
break;
}
}

اینو امتحان کن.

Moien Tajik
پنج شنبه 06 آبان 1395, 12:41 عصر
using (var client = new WebClient { Encoding = Encoding.UTF8 })
{
var downloadString = client.DownloadString("YourURLHere");
if(downloadString.Contains("محصولی جهت نمایش وجود ندارد"))
{
Button1.PerformClick();
}
}

soheilnew
پنج شنبه 06 آبان 1395, 15:03 عصر
ممنون دوستان

soheilnew
پنج شنبه 06 آبان 1395, 15:21 عصر
کار نکردن متاسفانه
هر دوتاش هم تست کردم