Javascript 按钮无法识别功能,即单击时不会发生任何事情

Javascript 按钮无法识别功能,即单击时不会发生任何事情,javascript,php,html,button,Javascript,Php,Html,Button,如果你能帮我的话,我会通过贝宝给你买杯啤酒!这个问题我已经解决了好几个小时了,请听我说完 我正在我的网站上使用实时搜索。当访问者在index.php页面上的表单中键入内容时,表单要么给出结果,要么在数据库中找不到任何内容的情况下,通过echo函数在表单下的index.php页面上输出一个按钮。(运行搜索表单的页面是search.php) 这意味着这个按钮(在id#Ne下)不在index.php页面HMTL上,而是通过search.php返回到index页面 我想做的是用一个按钮隐藏搜索表单。搜索

如果你能帮我的话,我会通过贝宝给你买杯啤酒!这个问题我已经解决了好几个小时了,请听我说完

我正在我的网站上使用实时搜索。当访问者在index.php页面上的表单中键入内容时,表单要么给出结果,要么在数据库中找不到任何内容的情况下,通过echo函数在表单下的index.php页面上输出一个按钮。(运行搜索表单的页面是search.php)

这意味着这个按钮(在id#Ne下)不在index.php页面HMTL上,而是通过search.php返回到index页面

我想做的是用一个按钮隐藏搜索表单。搜索表单位于index.php页面的id#iskanje下

这就是我正在使用的javascript。如果我把这个脚本放在index.php页面上,什么都不会发生,如果我把它放在search.php页面上,整个搜索表单就会崩溃

<script>
       $( "#Ne" ).click(function() {
      $( "#iskanje" ).hide( "slow" );
    });

</script>
我希望我已经说得够清楚了。如果你能帮我的话,我甚至可以提供源文件

我也试过了

$( document ).ready(function() {
   $( "#Ne" ).click(function() {
      $( "#iskanje" ).hide( "slow" );
   });

});
谢谢

是在JavaScript运行之前还是之后添加了
#Ne
按钮?如果浏览器为按钮指定单击处理程序时按钮不“存在”,则该按钮将无法工作

但是,可以将单击处理程序绑定到按钮的父级,如下所示:

$("body").on("click", "#Ne", function() {
  $( "#iskanje" ).hide( "slow" );
});
这表示“将click处理程序绑定到body,每次单击body时,检查它是否是ID为“Ne”的按钮”


我不知道
#Ne
的直接父对象,但无论是什么,它都比
body
更合适,因为您正在动态添加按钮,所以该按钮在DOM ready上不可用

使用-

$(document).on("click","#Ne",function() {
    $( "#iskanje" ).hide( "slow" );
});
试一试

}))

我猜jquery找不到该按钮,因为它是在onload之后插入的…

首先您必须使用$(document)。准备好等待DOM加载了吗 第二件事是使用jquery post或get方法? 如果您的答案是肯定的,那么您需要使用.done()方法


@user3794172哈哈,别担心,这是一段非常简单的代码
$( document ).ready(function() {
   $( "#Ne" ).click(function() {
      $( "#iskanje" ).hide( "slow" );
   });

});
$("body").on("click", "#Ne", function() {
  $( "#iskanje" ).hide( "slow" );
});
$(document).on("click","#Ne",function() {
    $( "#iskanje" ).hide( "slow" );
});
$( "body" ).on('click', '#Ne', function() {
  $( "#iskanje" ).hide( "slow" );
$.post(url,{argumets},function(data){
   //data is what is retrieved from the search.php
   // could be empty result in our case we are sending button back 
   // or displaying results in case we have some results

}).done(function(){

//put here the button code 
// this should work for you 
});