0

嗨,我试图在通过文本输入单击标题时替换标题以修改标题,然后将修改提交到数据库,我正在使用以下代码:

<div style="font-size: 70%;"><h2 class="outer"><?php echo $designation; ?> </h2></div>

这个 div 是使用另一个脚本加载的,因此不在原始页面上,所以我认为我们必须使用委托方法。

这是我用来将其背景颜色变为粉红色的 jquery 脚本:

<script src="jquery-1.10.2.min.js">
  $(document).ready(function(){
     $("#right").delegate("h2","click",function(){
       $("h2").css("background-color","pink");
     });
  });
 </script>

知道如何用文本输入标签替换这个 div 中的标题吗?一旦我在输入字段之外单击,知道如何将修改提交到数据库吗?谢谢你

4

1 回答 1

1
  • 您的代码中没有点击处理程序,您可以使用.on()方法
  • 您应该使用另一个脚本标签来加载 .js 文件,您的标记无效
  • input元素没有结束标签,你应该删除</input>

    <script src="jquery-1.10.2.min.js"></script>
    
    <script>
       $(document).ready(function(){ // When the DOM is ready
          $(".outer").on('click', function() {
             if ( this.children.length ) return;
             var text = $.trim(this.innerHTML);
             $("<input>").val(text)
                         .appendTo($(this).empty())
                         .focus();
          }).on('blur', 'input', function() {
             // Listening to blur event 
             // for replacing the element with it's value
             $(this).replaceWith( $.trim(this.value) );
          })
       })
    </script>
    

http://jsfiddle.net/3FKzH/

于 2013-10-09T14:48:46.463 回答