میگم من هر کاری میکنم نمیشه نوشت های تکست رو به صفحه ارسال
پست جدید بلاگفا انتقال دارد .
باید چی کار کنم ؟ id , name هم داره ولی نمیشه :افسرده:
Printable View
میگم من هر کاری میکنم نمیشه نوشت های تکست رو به صفحه ارسال
پست جدید بلاگفا انتقال دارد .
باید چی کار کنم ؟ id , name هم داره ولی نمیشه :افسرده:
نام اشیا در صفحه ارسال مطلب بلاگفا
ببخشید کد هاش رو یادم نیست امیدوارم خودتون تکمیلش کنید...
ممنون که جواب دادید .
ولی میشه بیشتر توضیح بدید نگرفتم ؟ یا مثلا یه مثال از کدی که باید بنویسم برام بزنید .
سلام
WebBrowser1.Document.getElementById("frameleft").c ontentDocument.getElementById("_txtContent_editor" ).contentDocument.documentElement.innerHTML = Text1.Text
با توجه به عکس بالا:
شماره یک (Document اصلی) میشه : WebBrowser1.Document
شماره دو (فریمی با ایدی frameleft) میشه : .getElementById("frameleft").contentDocument
شماره سه میشه : .getElementById("_txtContent_editor").contentDocum ent
نکته:
چون نسخه WebBrowser ای که وی بی استفاده میکنه قدیمیه سایت بلاگفا یکم تغییرات توی کد های سایتش میده تا بهتر نمایش داده بشه و اون چیزی که ما میبینیم با اون چیزی که مثلا توی firefox میبینیم اندکی تفاوت داره....
به همین خاطر شماره سه، آیدی داره به اسم "_txtContent_editor"
آموزشی:
Iframe یا همون فریم صفحات جداگانه ای هستند که توی صفحه اصلی لود میشن
و دسترسی به اون صفحات با دستور contentDocument امکان پذیر هست...
نکته اش اینجاست که getElementById اشیا رو تو صفحه اصلی سرچ میکنه نه توی فریم...
میگم من این رو امتحان کردم بازم جواب نداد
کار خاصی میخواد انجام بدم ؟
اروری چیزی میده؟
خودم امتحان کردم جواب داد بعد برای شما ارسال کردم...
احتمالا مشکل از ادیتور سایتمونه...
چون اگه دقت کنید تو پست بالایی بین حروف c و o تو عبارت contentDocumetn فاصله انداخته ولی تو این پایینیه درسته...
تو پست قبلی هرچی تلاش کردم فاصله نندازه، نشد... الان مشکلش رو فهمیدم... بعد از پرانتز باید یه فاصله بدی تا درست شه...
البته شاید هم با Opera مشکل داشت اینجوری میشد...
WebBrowser1.Document.getElementById( "frameleft" ).contentDocument.getElementById( "_txtContent_editor" ).contentDocument.documentElement.innerHTML = Text1.Text
:ناراحت: داداش بازم نشد فکر کنم از سیستم من باشه .
اگه میشه یه کاری کن سورس رو بزام پیوست کن با اگزش شاید مشکل از سیستم من باشه
ولی به این عکسم نگاه کن ببین شاید جایی رو اشتباه رفتم .
من اول وارد اکانتم تو بلاگفا میشم بعد روی ارسال پست جدید میزنم بعد کد رو تست میکنم ولی نمیشه .
ضمیمه 121280
همه کار رو درست انجام دادین بجز این On Error Resume Next...
به همین خاطر اخطاری رو مشاهده نمیکردید که ببینید مشکل از کجاست...
در ضمن با توجه به عکس فکر میکنم مشکل از یه جای دیگه است...
ضمیمه 121291
شما اول سعی کنید دستی توی برنامه یه پستی ارسال کنید ببینیم میشه یا نه...
بازم نشد on error هم برداشتم ارور خاصی نمیداد میگفت text1.text="text1" همین
دیگه دارم بیخیالش میشم :ناراحت:
With WebBrowser1.Document.getElementById( "frameleft" ).contentDocument
On Error Resume Next
If .getElementById( "frmPost" ) Then
.getElementById( "txtContent" ).innertext = "meysam"
MsgBox "Okay"
Else
MsgBox "Is Not Loaded"
End If
On Error GoTo 0
End With
???????نقل قول:
ارور خاصی نمیداد میگفت text1.text="text1" همین
بازم نشد !!!
ضمیمه 121322
کد قبلیم باز تست کردم ارور اصلیش این بود .
ضمیمه 121323
ببخشید یادم رفت بگم چون txtContent هیدن هست دیده نمیشه ولی اگر ارسال رو بزنید ارسال میکنه تست کردم...
ارور هم مربوط به آماده نبودن WebBrowser هست احتمالا احتمالا احتمالا...
برای ارور هم این رو امتحان کنید:
Private Sub Command1_Click()
If WebBrowser1.ReadyState <> READYSTATE_COMPLETE Then Exit Sub
WebBrowser1.Document.getElementById( "frameleft" ).contentDocument.getElementById( "_txtContent_editor" ).contentDocument.documentElement.innerhtml = Text1.Text
End Sub
و اگر با هیدن بودن مشکل دارید خروجی متن زیر رو آپلود کنید یه نگاهی بیندازم...
Debug.Print WebBrowser1.Document.getElementById( "frameleft" ).contentDocument.documentElement.Outerhtml
ضمیمه 121333
باز هم ارور.
اقا بیخیالش شدم شما هم ولش کن .
مشکل مشابه و راه حل برای کسایی که سرچ کردن( میدونم از تاریخ تاپیک خیلی گذشته)
https://barnamenevis.org/showthread.p...=1#post2316917