1

我有一个表单obs_form.php女巫是通过fancybox加载的。此表单具有添加或编辑观察的作用。这是通过textarea.

echo '<textarea id="obs" name="obs" autocomplete=off rows="0" cols="0">'.$row['obs'].'</textarea>';

该表单及其功能在 Firefox 中完美运行。问题来自 IE:假设我们在数据库中放了一条评论,保存后(信息存储在数据库中)我们意识到我们需要对评论进行一些修改。我们单击编辑按钮,我们对评论进行修改,并将信息保存到数据库。到目前为止一切都很好......但是如果我们想对文本做一些其他的修改,那就倒霉了。因为文本区域显示的是原始文本(我认为是现金)而不是我们上次保存的那个....

我试图放在obs_form.php休闲脚本之上,以便 textarea 的值为 null 并强制从数据库中读取它:

<script type="text/javascript">
   $(document).ready(function () {
      document.getElementById("obs").value = '';
      return false;
   });
</script>

但它不起作用......我在哪里做错了?

编码:

<script type="text/javascript">
  $(document).ready(function () {
   $("#obs").text('');
   return false;
  });
</script>
<?php //-------------------------------------------------------------- adauga Observatie
include 'mysql_conect.php';
    $page=$_REQUEST['page'];
    $proiect_id=$_REQUEST['proiect_id'];
    $azi=  strtotime ("today");
    $data=  date("Y-m-d",$azi);
    $task_id    = $_REQUEST["task_id"];
    $obs_id = $_REQUEST["obs_id"];

    $actiune="adauga";
        if ($_REQUEST["action"]=="editare") {
          $query=mysql_query('SELECT * FROM obs WHERE obs_id='.$obs_id) or die ("trrr");
          $row=mysql_fetch_array($query);
          $actiune="editeaza";
        }
    echo '<div id=obsform>';
echo '<form name=obs id=obs method=post action=obs_editare_'.$page.'.php?action='.$actiune.' autocomplete="off">';
        echo '<input type=hidden name=task_id value='.$task_id.'>';
                    echo '<input type=hidden name=proiect_id value='.$proiect_id.'>';
                    echo '<input type=hidden name=obs_id value='.$obs_id.'>';
                    echo '<input type=hidden name=page value='.$page.'>';
                    echo '<input type=hidden name=data_obs readonly="readonly" value='.$data.'>';
        echo '<table border=0 cellpading=2 cellspacing=0 width=100%>';
            echo '<tr>';
                echo '<td>';                        
                    echo '<label>Observatie</label>';
                    echo '<textarea id="obs" name="obs" autocomplete=off rows="0" cols="0">'.$row['obs'].'</textarea>';     
                echo '</td>';
            echo '</tr>';
            echo '<tr>';
                echo '<td>'; 
                    echo '<label>User</label>';
                    echo '<input type=text name=user value="'.($row['user']).'">';      
                echo '</td>';                                               
            echo '</tr>';
            echo '<tr>';
                echo '<td colspan=2>';
                echo '<div class=form_diferentiator></div>';
                echo '</td>';
            echo '</tr>';
            echo '<tr>';
                echo '<td colspan=2 style=text-align:center><input type=submit value='.$actiune.'></td>';
            echo '</tr>';
                      echo '</table>';
echo '</form>';
echo '</div>';
?>
4

2 回答 2

2

textarea 值在标签中,而不是在 value 属性中!

$(document).ready(function () {
   document.getElementById("obs").innerHTML = '';
   return false;
});

更好的方法是 jquery 的 .val() 方法

$(document).ready(function () {
   $("#obs").val();
});
于 2012-11-26T12:11:12.643 回答
0

您可能需要:

<script type="text/javascript">
   $(document).ready(function () {
      $("#obs").text('');
      return false;
   });
</script>
于 2012-11-26T12:10:40.927 回答