Javascript 为什么主动搜索会破坏我的脚本?

Javascript 为什么主动搜索会破坏我的脚本?,javascript,php,jquery,Javascript,Php,Jquery,因此,对于在线民意调查,我将显示一个服务列表。我还希望我的用户能够搜索此列表。我编写了一个jQuery脚本,用于存储单击的服务以供以后使用。但是,当我搜索服务并单击它时,jQuery脚本没有响应。看在上帝的份上,我想不出为什么它不起作用 PHP $sql = "SELECT ServiceAddress,ServiceID,ServiceIcon FROM Services WHERE ServiceName LIKE '%" . $_POST['data'] . "%'"; $query =

因此,对于在线民意调查,我将显示一个服务列表。我还希望我的用户能够搜索此列表。我编写了一个jQuery脚本,用于存储单击的服务以供以后使用。但是,当我搜索服务并单击它时,jQuery脚本没有响应。看在上帝的份上,我想不出为什么它不起作用

PHP

$sql = "SELECT ServiceAddress,ServiceID,ServiceIcon FROM Services WHERE ServiceName LIKE '%" . $_POST['data'] . "%'";
$query = mysql_query($sql);
$num_rows = mysql_num_rows($query);
if ($_POST['data'] == "") {
    echo '<table></table>';
} else {
    if ($num_rows > 0) {
            echo '<ul>';
            while($row = mysql_fetch_object($query)) {
                echo '<li>
                <a class="serviceIcon" id="serviceID' . $row->ServiceID . '">
                <img id="' . $row->ServiceID . '" src="data:image/png;base64,' . base64_encode( $row->ServiceIcon ) . '" alt=\"\" height=\"80%\" /></a></li>';
            };
            echo '</ul>';            
    } else {
        ?>
        <table>
            <tr>
                <td>Unfortunately, no results have been found. You can refine your search.</td>
            </tr>
        </table>
       <?php
    };
};
mysql_free_result($query);
exit();
Click()不适用于动态添加的元素,请用于:

$('.serviceIcon').on('click', function(event) {
    var id = $(this).attr('id');
    $.variablesnamespace.selectedID = id.replace('serviceID', '');
});

您需要委托或使用,因为您可以通过编程方式将html添加到DOM中

$(function(){

    $('.serviceIcon').on('click',function(event) {
        var id = $(this).attr('id');
        $.variablesnamespace.selectedID = id.replace('serviceID', '');
    });

})

您是否可以检查错误控制台中的错误日志,然后将其粘贴到此处。的可能重复项
$(function(){

    $('.serviceIcon').on('click',function(event) {
        var id = $(this).attr('id');
        $.variablesnamespace.selectedID = id.replace('serviceID', '');
    });

})