رفتن به مطلب
  • 0

رویداد کلیک در وب ویو


yaser_b4a

سوال

سلام

من میخوام از خارج وب ویو دکمه رویداد کلیک دکمه ای در وب ویو را فراخوانی کنم:

اگر کد دکمه مورد نظر به صورت زیر باشد:

<input type="submit" name="ctl00$masterHld$btnSubmit" value="ورود" id="ctl00_masterHld_btnSubmit" class="btn1">

مشکلی ندارم ولی

اگر کد بصورت زیر باشد عکس العملی نشون نمیده :

<button id="uploadFileId" class="btn btn-default action" onclick=" document.getElementById('uploadBtn').click(); ">
            <span>
                <img src="/Images/browse-icon.svg" style="width: 25px; height: 25px">
            </span>
            Use your own photo
</button>

یه تیکه کدی که استفاده میکنم :

Javascript_StringBuilder.Initialize
	Javascript_StringBuilder.Remove(0,Javascript_StringBuilder.Length)
	Javascript_StringBuilder.Append("document.getElementById('uploadBtn').click();")
	WebViewExtras1.ExecuteJavascript( Javascript_StringBuilder.ToString)	
	Dim jsStatement As String
	jsStatement="B4A.CallSub('processHTML',true, document.documentElement.outerHTML)"
	WebViewExtras1.ExecuteJavascript(jsStatement)

لطفا راهنمایی کنید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

10 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

بفرمایید اینم تست کردم و مشکلی نداره

WebViewExtras.executeJavascript(WebView,"document.querySelector('.btn.btn-default.action').click()")

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در هم اکنون، یاسر گفته است :

 تشکر ولی کار نکرد

من با این کدی که دادین تست کردم

در 7 ساعت قبل، یاسر گفته است :

 


<button id="uploadFileId" class="btn btn-default action" onclick=" document.getElementById('uploadBtn').click(); ">
            <span>
                <img src="/Images/browse-icon.svg" style="width: 25px; height: 25px">
            </span>
            Use your own photo
</button>

 

حالا اگه کار نمی کنه سورس کامل html رو قرار بدیدن تا تست کنم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بفرمایید

</div>
    <label id="uploadLabel" class="center-block" style="width: 230px;">
        <button id="uploadFileId" class="btn btn-default action" onclick=" document.getElementById('uploadBtn').click(); ">
            <span>
                <img src="/Images/browse-icon.svg" style="width: 25px; height: 25px" />
            </span>
            Use your own photo
        </button>
        <input id="uploadBtn" type="file" accept="image/*" style="visibility: hidden; width: 0px; height: 0px">
    </label>
</div>

:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

رویداد کلیک در دسکتاپ و با اسکریپتی که دادم به درستی کار میکنه ولی همین سورس html شما در وب ویو گوشی با کلیک کردن هم کاری انجام نمیده

لینک ارسال
به اشتراک گذاری در سایت های دیگر

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

لینک ارسال
به اشتراک گذاری در سایت های دیگر

اول از همه برنامه رو در حالت Release خروجی بگیر بعضی وقتا اسکریپت که اضافه میشه به مرورگر در حالت Release (obfuscate) کار نمیکنه
از کتابخونه WebViewExtras استفاده کن
 

	Dim WebViewExtras As WebViewExtras
	WebViewExtras.addWebChromeClient(WebView,"")
	WebViewExtras.addJavascriptInterface(WebView, "B4A")

برای کلیک هم از این کد استفاده کن
 

WebViewExtras.executeJavascript(WebView,"document.getElementsByClassName('btn1')[0].click()")

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

کار نکرد!

اگر tag مورد نظر input باشه مشکلی نیست ولی tag مورد نظر button است.

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

input type="submit" name="ctl00$masterHld$btnSubmit" value="ورود" id="ctl00_masterHld_btnSubmit" class="btn1">

ولی به صورت زیره:

<button id="uploadFileId" class="btn btn-default action" onclick=" document.getElementById('uploadBtn').click(); ">
            <span>
                <img src="/Images/browse-icon.svg" style="width: 25px; height: 25px">
            </span>
            Use your own photo
</button>

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...