PDA

View Full Version : مشکل دستور جاوا اسکریپت در مسترپیج



pedram_ns
پنج شنبه 10 فروردین 1391, 12:58 عصر
سلام
من در سایتم هم صفحات عادی دارم و هم مسترپیج. در صفحاتم یک فایل جاوا اسکریپت قرار دادم که رنگ پس زمینه تکس باکس رو تغییر بدم. این کد برای صفحه عادی کار میکنه ولی برای مسترپیجم نه. باید بگم که تکس باکسم در placeholder نیست.

در ضمن این فایل جاوا یک تب رو هم ایجاد میکنه که با اون مشکلی ندارم و در مسترپیجم درست کار میکنه ولی نمیدونم با کد جدید چرا مشکل داره.

کسی میدونه مشکلش چیه؟



function onfocuse_searchbox(x) {

document.getElementById(x).style.backgroundColor = '#FFFF00';
}

hamid_shrk
پنج شنبه 10 فروردین 1391, 13:07 عصر
اسم تکست باکستون چیه ؟
وچطوری تابع رو فراخوانی میکنید تو تکست باکستون؟

hesamsalehnamadi
پنج شنبه 10 فروردین 1391, 15:10 عصر
برو اینجا
http://www.codeproject.com/Articles/24575/Change-Textbox-Input-background-color-on-focus

pedram_ns
پنج شنبه 10 فروردین 1391, 15:38 عصر
من با انجام این کار مشکل ندارم مشکل من اینه که وقتی میره تو مسترپیج کار نمیکنه در حالی که همه چیز به نظر درست میاد.

این هم تکس باکسمه:

<
asp:TextBox ID="textbox1" runat="server" onfocus="onfocuse_searchbox('textbox1')" ></asp:TextBox>

hamid_shrk
پنج شنبه 10 فروردین 1391, 15:47 عصر
با این دستور درست شد :

document.getElementById('ctl00_CPH1_' + x).style.backgroundColor = '#FFFF00';

کنترل ها وقتی درون پلیس هلدر قرار میگیرن id اون پلیس هلدر هم بهشون اضافه میشه.
پیشنهاد میکنم وقتی با جاوا اسکریپت کار میکنید برای debug کردن اوا کد جاوا اسکریپتتون بنویسید debugger سپس امکان debuge جاوا اسکریپتتون رو تو مرور گر فعال کنید.خیلی راحت میشید.

pedram_ns
پنج شنبه 10 فروردین 1391, 16:57 عصر
آقا حمید ممنون که وقت میذارین ولی همون طور که گفتم این تکس باکس اصلا تو پلیس هولدر نیست و توی قسمت اصلی مسترپیجه.
من در همون قسمتی که این تکس باکس هست یه تب ساده ساختم که کد هاش در همون فایل اسکریپ هست و کار هم میکنه.



function tab(x) {

document.getElementById('1').style.display = "none";
document.getElementById('2').style.display = "none";
document.getElementById('3').style.display = "none";
document.getElementById('4').style.display = "none";
document.getElementById(x).style.display = "inline";

}

این کد هم در صفحات عادی و هم در مسترپیج کار میکنه و موردی نداره. ولی نمیدونم چرا کد جدید کار نمیکنه.

hamid_shrk
پنج شنبه 10 فروردین 1391, 17:10 عصر
آهان من فکر کردم میگی هست
خوب ایندفعه باید اینو اضافه کنی :

document.getElementById('ctl00_' + x).style.backgroundColor = '#FFFF00';

پیجت رو با مرورگر view source کن ،میبینی که id تکست باکست وقتی از مستر پیج استفاده میکنی عوض میشه.