Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.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
Jquery在div外部单击自动提交_Jquery - Fatal编程技术网

Jquery在div外部单击自动提交

Jquery在div外部单击自动提交,jquery,Jquery,当用户单击div的外侧时,自动提交表单的最简单方法是什么? 只考虑DIV而不是表单元素。 <div id="formDiv"> <form id="search"> <input id="target" type="text" value="Field 1" /> <input type="text" value="Field 2" /> </form> </div> 您可以将单击处理程序添加到未在中激活的文档中,

当用户单击div的外侧时,自动提交表单的最简单方法是什么? 只考虑DIV而不是表单元素。

<div id="formDiv">
<form id="search">
  <input id="target" type="text" value="Field 1" />
  <input type="text" value="Field 2" />
</form>
</div>
您可以将单击处理程序添加到未在中激活的文档中,如下所示:

$(document).click(function() {
  $("#search").submit();
});
$("#formDiv").click(function(e) {
  e.stopPropagation();
});
$("#search:visible").submit();
这样做的目的是,任何对文档的点击都会导致提交,但从内部我们会阻止点击事件通过到达文档

如果搜索表单有时可能被隐藏,并且您只希望在显示时启动它(例如,没问题),只需在选择器中添加一个,如下所示:

$(document).click(function() {
  $("#search").submit();
});
$("#formDiv").click(function(e) {
  e.stopPropagation();
});
$("#search:visible").submit();
您可以将单击处理程序添加到未在中激活的文档中,如下所示:

$(document).click(function() {
  $("#search").submit();
});
$("#formDiv").click(function(e) {
  e.stopPropagation();
});
$("#search:visible").submit();
这样做的目的是,任何对文档的点击都会导致提交,但从内部我们会阻止点击事件通过到达文档

如果搜索表单有时可能被隐藏,并且您只希望在显示时启动它(例如,没问题),只需在选择器中添加一个,如下所示:

$(document).click(function() {
  $("#search").submit();
});
$("#formDiv").click(function(e) {
  e.stopPropagation();
});
$("#search:visible").submit();

在案例中的父元素(可能是主体元素)中编写onclick方法并提交表单详细信息。

在案例中的父元素(可能是主体元素)中编写onclick方法并提交表单详细信息。

您能解释一下您想做什么吗?您能解释一下您想做什么吗?这会阻止正常提交,etc从内部停止工作…如果需要终止事件,请仅使用return false,否则按您的意愿执行。在本例中为.stopPropagation,在其他情况下为.preventDefault。这将阻止正常提交等从内部停止工作…如果需要终止事件,请仅使用return false,否则按您的意愿执行,.stopPropagation在本例中为.prevent在其他情况下为默认值。如果我想在单击外侧时添加自动提交表单的功能,则只有当用户对表单进行更改时,div才起作用。另一方面,它不应该自动提交表单。解决方案是什么?@Muhammad-你能澄清一下吗?我想保留我问题中描述的当前功能。但我想补充一点,那就是只有在我对表单进行任何更改后,它才应该提交表单。@Muhammad-你的意思是只有在您更改输入字段时才提交表单?如果我不更改表单中的文本框值并单击表单div的外侧,它不应该自动提交表单。如果我想在单击外侧时添加自动提交表单的功能,div仅在用户对表单进行更改时工作。另一方面,它不应该自动提交表单。解决方案是什么?@Muhammad-你能澄清一下吗?我想保留我问题中描述的当前功能。但我想补充一点,只有当我对表单进行了任何更改时,它才应该提交表单。@Muhammad-你的意思是仅当你更改输入字段时?如果我不更改表单中的say textbox值并单击表单div的外侧,它不应该自动提交表单。
$(#'formDiv').click(function(){
 return false;
});

$(document).click(function() {
  $("#search").submit();
});