相关疑难解决方法(0)

防止多次点击按钮

我有以下jQuery代码,以防止双击按钮.它工作正常.我Page_ClientValidate()用来确保只有在页面有效时才会阻止双击.[如果存在验证错误,则不应设置标志,因为没有回发到服务器的启动]

是否有更好的方法可以防止在页面加载之前再次单击按钮?

我们isOperationInProgress = yesIndicator是否可以仅在页面导致回发到服务器时设置标志 ?是否适合event在用户第二次点击按钮之前调用它?

注意:我正在寻找一种不需要任何新API的解决方案

注意:这个问题不重复.在这里,我试图避免使用Page_ClientValidate().此外,我正在寻找一个event我可以移动代码的地方,以便我不需要使用Page_ClientValidate()

注意:我的方案中没有涉及ajax.该ASP.Net表格将被同步提交给服务器.javascript中的按钮单击事件仅用于防止双击.表单提交是使用ASP.Net同步的.

现在的代码

$(document).ready(function () {
  var noIndicator = 'No';
  var yesIndicator = 'Yes';
  var isOperationInProgress = 'No';

  $('.applicationButton').click(function (e) {
    // Prevent button from double click
    var isPageValid = Page_ClientValidate();
    if (isPageValid) {
      if (isOperationInProgress == noIndicator) {
        isOperationInProgress = yesIndicator;
      } else {
        e.preventDefault();
      }
    } 
  });
});
Run Code Online (Sandbox Code Playgroud)

参考文献:

  1. 验证器导致双击检查的不正确行为
  2. 是否使用Page_IsValid或Page_ClientValidate()(用于客户端事件)

@Peter Ivan在上述参考文献中注意到:

重复调用Page_ClientValidate()可能会导致页面过于突兀(多个警报等).

javascript jquery

33
推荐指数
7
解决办法
12万
查看次数

MysqlError:在插入时键'PRIMARY'的重复条目'1-5'不确定如何

我收到错误MysqlError: Duplicate entry '1-5' for key 'PRIMARY',如下面的代码中所示.它只发生一次(我可以检测到,但它是随机的)我找不到原因(New Relic报道),但我无法重现,除了行号和给出的错误,我没有更多的信息.架构和代码如下.

num_rows()以某种方式返回一个不是1的值,即使它不应该.如果有人可以提供一些有关如何调试或修复的见解,那将会有所帮助.

这是我的location_items架构:

CREATE TABLE `phppos_location_items` (
  `location_id` int(11) NOT NULL,
  `item_id` int(11) NOT NULL,
  `location` varchar(255) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
  `cost_price` decimal(23,10) DEFAULT NULL,
  `unit_price` decimal(23,10) DEFAULT NULL,
  `promo_price` decimal(23,10) DEFAULT NULL,
  `start_date` date DEFAULT NULL,
  `end_date` date DEFAULT NULL,
  `quantity` decimal(23,10) DEFAULT '0.0000000000',
  `reorder_level` decimal(23,10) DEFAULT NULL,
  `override_default_tax` int(1) NOT NULL DEFAULT '0',
  PRIMARY KEY (`location_id`,`item_id`),
  KEY `phppos_location_items_ibfk_2` (`item_id`),
  CONSTRAINT `phppos_location_items_ibfk_1` FOREIGN KEY (`location_id`) REFERENCES `phppos_locations` …
Run Code Online (Sandbox Code Playgroud)

php mysql sql codeigniter

2
推荐指数
1
解决办法
2129
查看次数

JS:如何防止多次提交表单?

简单的形式没有验证.如果用户多次按下提交按钮(即由于互联网滞后或其他原因),我不希望表单被提交多次.我对客户端解决方案感兴趣.jQuery或简单的JavaScript是可以接受的.

谢谢.

javascript jquery form-submit

0
推荐指数
1
解决办法
251
查看次数

OnClick - 阻止用户进行多次提交

可能重复:
如何防止客户端提交多个表单?

我们有一个项目管理工具,但是当用户在任务下提交日志时,他们会多次单击"提交"按钮.这会添加相同信息的几个条目.

我已经跟踪了PHP文件中的代码,我在网上看到了很多提交点击的解决方案.过去四五个小时我一直在玩,但不幸的是我无法得到任何工作.我希望有人可以提供一些帮助:

这是我在PHP文件中的代码:

<input type="submit"  class="button" value="<?php echo $AppUI->_('update task'); ?>" onclick="updateTask();" />
Run Code Online (Sandbox Code Playgroud)

实际上我只想让用户点击按钮,然后单击一下.它显示为灰色或用户无法再点击.

谢谢

javascript onsubmit

0
推荐指数
1
解决办法
2157
查看次数

标签 统计

javascript ×3

jquery ×2

codeigniter ×1

form-submit ×1

mysql ×1

onsubmit ×1

php ×1

sql ×1