2014-11-21 128 views
0

我是全新的PHP,所以我的眼镜如果这个问题似乎对你来说很奇怪。PHP的JavaScript问题

我有一个PHP文件(的index.php)类似,

echo " 
    <div> 
     <FORM name='myform' id='myform' method='post' action=''> 

     // I fetch data from mysql and populate dropdown list. Tha't work fine. 
     // Then I have one submit button when I click on that 

     echo "<button id='showButton' type='submit'> Show </button>"; 

     </FORM> 
"; 

然后我就一个process.js文件类似,

$(document).ready(function() { 

    $('#showButton').click(function() { 

     // Here I make one AJAX call to php file (fetch_more_data.php), which fetch more data from database 
     // This also works fine 

    }); 

}); 

在fetch_more_data.php我获取更多数据并在表中使用

echo " 
    <script type = 'text/javascript' src = 'edit.js'></script> 

    <table ...> 

    <td> 
     <button id="myButton"></button> 
    </td> 

    </table> 

"; 

这也行得通。但我想编辑一个表格单元,为此我需要编写一些Java脚本代码。我想在Javascripr为myButton的点击功能写,我写上edit.js文件,

$(document).ready(function() { 

    $('#myButton').click(function() { 

     alert('Hello'); 

    }); 

}); 

问题是$('#myButton').click(function()从来没有所谓。我花了很长时间,但作为初学者,我的搜索选项有限。 我会appriciate如果有人解决这个问题。

问候,

+1

请在我想到一个答案之前先适当地包装你的代码 – 2014-11-21 12:32:23

+0

你不能在另一个'echo“的内容中使用'echo' – RichardBernards 2014-11-21 12:33:11

+0

你正在使用jquery .. http://stackoverflow.com/questions/ 10508319/jquery-input-button-click-event-listener下面是一个例子:http://jsfiddle.net/gdoron/WTzKR/ – Gudgip 2014-11-21 12:34:21

回答

0

试着像这样调用它:

$(document).ready(function(){ 
    $(document).on('click', '#myButton', function(){ 
    alert('hi'); 
    }); 
}); 

希望这有助于

0

尝试

$('#myButton').live('click',function() { 

alert('Hello'); 

}); 

}); 
+0

嗨,谢谢你的回复。我可以看到myButton回调函数是否在萤火虫中被调用? – 2014-11-21 14:01:00

0

试试这个:

$(document).ready(function() { 

$(document).on("click", "#myButton", function() { 

alert('Hello'); 

}); 
}); 

由于HTML被添加到动态的DOM,你需要在jQuery的

来处理使用 Event Delegation
+0

感谢您的评论,似乎我没有连接fetch_more_data.php和edit.js.我已经包含回声“”;在fetch_more_data.php但没有效果 – 2014-11-21 13:07:58

0

我认为问题是,你不加载的jQuery

下载在哪里是你的PHP文件相同的文件夹中的jQuery和在你的代码中加入这一行

<script src="jquery-1.11.0.min.js"></script>