开发者

input onfocus problem

开发者 https://www.devze.com 2022-12-25 19:29 出处:网络
it is the problem, i can\'t undertand anyway. i have the following simple script <input class=\"input\"type=\"text\" name=\"l_username\" style=\"color: #ccc;\"

it is the problem, i can't undertand anyway. i have the following simple script


    <input class="input"  type="text" name="l_username" style="color: #ccc;" 
     value= " <?if ($_POST[l_username] != '') 
              echo $_POS开发者_Go百科T[l_username];
              else echo 'something';?>"   
     onfocus="if (this.value == 'something') {
 this.value='';this.style.color='black';}" />

onfocus doesn't work here, but when i delete php script from value, it works


<input class="input"  type="text" name="l_username" style="color: #ccc;" 
         value= " something"   
         onfocus="if (this.value == 'something') {
     this.value='';this.style.color='black';}" />

it works fine. could you tell me why? thanks


<input class="input"  type="text" name="l_username" style="color: #ccc;" 
 value= " <?if ($_POST[l_username] != '') 
          echo $_POST[l_username];
          else echo 'something';?>"   
 onfocus="if (this.value == 'something') {
this.value='';this.style.color='black';}" />

you have a space in front of your PHP script. Try to remove it to match the javascript if case (if (this.value == 'something')


 " <?if ($_POST[l_username] != '') 
              echo $_POST[l_username];
              else echo 'something';?>" 

because of the space character before <?

In your focus event handler you could use the defaultValue property, so you don't have to repeat the "something" string twice

onfocus="if(this.value === this.defaultValue){this.value='';this.style.backgroundColor='black';}"
0

精彩评论

暂无评论...
验证码 换一张
取 消