سؤال

أساسا ما أريده بسيط، عندما يكون الناس onclick، يصبح الحقل قابلة للتحرير.

بعد تغيير القيمة، اضغط ESC في لوحة المفاتيح / أو انقر فوق خارج، لحفظ السجل.

لست متأكدا لماذا لا يعمل. يبدو الوثائق غير كاملة ... أي شخص حصل على فكرة عن كيفية عمل هذا؟ صفحة الوثائق: http://www.appelsiini.net/projects/jediable.

أنا هنا نشر الرمز الموجود هنا بالنسبة للرجال للمراجعة.

اختبار.html.

<head>

<title></title>

<script src="jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
<script src="jquery.jeditable.mini.js" type="text/javascript" charset="utf-8"></script>

<script type="text/javascript" charset="utf-8">

$(function() {

  $(".click").editable("jeditabletest.php", { 
      indicator : "<img src='indicator.gif'>",
      tooltip   : "Click to edit...",
      style  : "inherit"
  });

});

</script>

<style type="text/css">
#sidebar {
  width: 0px;
}

#content {
  width: 770px;
}

.editable input[type=submit] {
  color: #F00;
  font-weight: bold;
}
.editable input[type=button] {
  color: #0F0;
  font-weight: bold;
}

</style>

</head>



<body>      
      <b class="click" style="display: inline">Click me if you dare!</b></> or maybe you should        

</body>
</html>


jeditabletest.php

<?php
echo "hehehe"
?>

لا أحد يعرف ما الخطأ؟ حاولت عدة مرات، أنها لا تعمل على الإطلاق. تم وضع جميع ملفات المكتبة ذات الصلة بالفعل.

هل كانت مفيدة؟

المحلول

لتمكين تقديم النموذج عند نقر المستخدم خارج القيام بما يلي:

 $(".editable").editable("http://www.example.com/save.php", {
     onblur : "submit"
 }); 

تقديم عند الضغط على ESC هو عموما فكرة سيئة لأن ESC محجوزة عالميا للإلغاء. إذا كنت ترغب حقا حقا في القيام بذلك، فأنت بحاجة إلى تحرير الشفرة الجدة. البحث وتحرير ما يلي في jQuery.jediments.js:

/* discard changes if pressing esc */
input.keydown(function(e) {
    if (e.keyCode == 27) {
        e.preventDefault();
        reset.apply(form, [settings, self]);
    }
});

نصائح أخرى

ياب: أوصي http://valums.com/edit-in-place/

ويستخدم ذلك divcontentEditable خاصية. قد ترغب في النظر في ذلك قبل البدء في استخدامه.

جاهة

ركضت الكود الخاص بك ويبدو أنها تعمل بشكل جيد. أعتقد أن السبب وراء عدم العمل من أجلك هو أن صفحة .html هذه تحتاج إلى تشغيل من خادم ويب مثل http: //localhost/mypage.html.وبعد يقوم البرنامج المساعد الجديي بإجراء مكالمة AJAX إلى الخادم كلما حاولت حفظ النص الذي تم تعديله وإجراء مكالمة AJAX للعمل، فأنت بحاجة إلى تشغيل الصفحة من خادم.

أتمنى أن يساعدك هذا!

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top