2

Firefox の以下の問題を修正したい

マウスをダブルクリックしてテキストボックス内のテキストを選択しようとすると、テキストが選択されず、カーソルがテキストの先頭に移動します。これを修正する方法はありますか?しかし、これはgooglechromeで正常に機能します

このhttp://www.iwebux.com/demos/ajax/から次のことを試しました。価格列を編集しようとすると、値を選択できません。ありがとうございます。

私のコード:

 $(document).ready(function () {
     $('td.edit').click(function () {
         $('.ajax').html($('.ajax input').val());
         $('.ajax').removeClass('ajax');

         $(this).addClass('ajax');
         $(this).html('<input id="editbox"  size="' + $(this).text().length + '" type="text" value="' + $(this).text() + '">');

         $('#editbox ').focus();
     });

     $('td.edit').keydown(function (event) {
         arr = $(this).attr('class').split(" ");
         if (event.which == 13) {
             $.ajax({
                 type: "POST",
                 url: "supplierprice/config.php",
                 data: "value=" + $('.ajax input').val() + "&rowid=" + arr[2] + "&field=" + arr[1],
                 success: function (data) {
                     $('.ajax').html($('.ajax input').val());
                     $('.ajax').removeClass('ajax');
                 }
             });
         }
     });

     $('#editbox').live('blur', function () {
         $('.ajax').html($('.ajax input').val());
         $('.ajax').removeClass('ajax');
     });
 });
4

5 に答える 5

0

から へのクリック イベントの伝播を停止する必要があり#editboxますtd.edit。これを追加してみてください:

$("td.edit").on("click", "#editbox", function(e) { e.stopPropagation(); });
于 2013-10-04T09:04:48.237 に答える