Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
AJAX jQuery单击导致函数事件被触发两次_Jquery_Ajax_Drupal - Fatal编程技术网

AJAX jQuery单击导致函数事件被触发两次

AJAX jQuery单击导致函数事件被触发两次,jquery,ajax,drupal,Jquery,Ajax,Drupal,我在Drupal中有一个AJAX聊天室模块,我试图在用户单击insert tex时将BBCode stlyetex标记插入提交框。我第一次设法让下面的代码正常工作,但后来当我单击Insert Tex时,它将Tex标记插入了三次 $('#edit-chatroom-message-entry-submit').click(function (e) { e.preventDefault(); e.stopPropagation(); if ($('#edit-chatroom-messa

我在Drupal中有一个AJAX聊天室模块,我试图在用户单击
insert tex
时将BBCode stlye
tex
标记插入提交框。我第一次设法让下面的代码正常工作,但后来当我单击
Insert Tex
时,它将
Tex
标记插入了三次

$('#edit-chatroom-message-entry-submit').click(function (e) {
  e.preventDefault();
  e.stopPropagation();
  if ($('#edit-chatroom-message-entry-box').val()){
    Drupal.chatroom.postMessage($('#edit-chatroom-message-entry-box').val());
    $('#edit-chatroom-message-entry-box').val('').focus();
  }
});

$('#edit-chatroom-tex-submit').click(function (e) {
  e.preventDefault();
  e.stopPropagation();
  $('#edit-chatroom-message-entry-box').val($('#edit-chatroom-message-entry-box').val() + '[tex][/tex]');
});

如果能提出建议使代码正常工作,我将不胜感激

如果我正确理解了您的代码,您需要:

var chatbox = $('#edit-chatroom-message-entry-box');
var value = chatbox.val();

if (value.indexOf('[tex][/tex]') == -1) {
    chatbox.val(value + '[tex][/tex]');
}

如果我正确理解您的代码,您需要:

var chatbox = $('#edit-chatroom-message-entry-box');
var value = chatbox.val();

if (value.indexOf('[tex][/tex]') == -1) {
    chatbox.val(value + '[tex][/tex]');
}

在jquery中将插入符号位置设置为0修复了以下问题:插入符号(0)

在jquery中将插入符号位置设置为0修复了问题:插入符号(0)

谢谢你的回复,但我无法让你的代码工作。我删除了第二个函数的最后一行并添加了您的代码,但仍然看到了双标记。如果我再次点击,我会看到三重标签…等等。你能提出其他建议吗?谢谢。当然,url是
http://sharpermath.com/drupal/node/24
我确信您可以使用firebug测试它,感谢回复Ivo,但我无法让您的代码正常工作。我删除了第二个函数的最后一行并添加了您的代码,但仍然看到了双标记。如果我再次点击,我会看到三重标签…等等。你能提出其他建议吗?谢谢。当然,url是
http://sharpermath.com/drupal/node/24
我确信您可以使用firebug来测试它。添加绘图画布时,我在不同的设置中再次遇到了相同的问题。在jquery中将插入符号位置设置为0修复了以下问题:插入符号(0);在添加绘图画布时,我在不同的设置中再次遇到同样的问题。在jquery中将插入符号位置设置为0修复了以下问题:插入符号(0);