Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.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中的href类单击函数_Jquery - Fatal编程技术网

使用jquery中的href类单击函数

使用jquery中的href类单击函数,jquery,Jquery,因此,出于某种原因,我无法让jquery在类移除的情况下对锚定单击做出反应。另一个功能工作正常。我试着把它从class改成id,但没有用。我也试着把id改成工作函数的id,但它还是没用 <?php if(isset($_POST['submit'])){ foreach($_POST['champion'] as $champion){ echo $champion.'<br>'; } }else{ ?&g

因此,出于某种原因,我无法让jquery在类移除的情况下对锚定单击做出反应。另一个功能工作正常。我试着把它从class改成id,但没有用。我也试着把id改成工作函数的id,但它还是没用

<?php
    if(isset($_POST['submit'])){
        foreach($_POST['champion'] as $champion){
            echo $champion.'<br>';
        }
    }else{
?>
<a href="#" id="AddChampion">Add Champion</a>
<form name="second_form" id="second_form" method="POST">
    <div id="ChampionInput">
    </div>
    <input type="submit" name="submit">
</form>
<?php 
    }
?>
$(document).ready(function(){
    championNumber = 1;
    $('a#AddChampion').on('click',function(){
        $('#ChampionInput').append(
        '<a href="#" class="remove">Remove</a>\
         <br>\
         <input type="text" name="champion[]" placeholder="Champion '+championNumber+'">\
         <br>');
        championNumber++;
    });
    $('a.remove').on('click',function(){
        alert('test');

    });
});

$(文档).ready(函数(){
championNumber=1;
$('a#AddChampion')。在('click',function()上{
$('#championput')。追加(
'\

\ \
"),; championNumber++; }); $('a.remove')。在('click',function()上{ 警报(“测试”); }); });
您有一个与您的锚关联的href。您需要将代码更新为

$('a#AddChampion').on('click',function(event){
    event.preventDefault(); // prevent the default handling
    .....
});

$("#ChampionInput").on('click', 'a.remove', function(event){
    event.preventDefault();
    alert('test');

});

作为参考-

现在,即使没有preventDefault,它也可以工作,我不完全理解为什么我们需要一个选择器和子选择器。在您的情况下,您可以跳过preventDefault(),但是,如果href是,那么在这种情况下,您将需要preventDefault()。此外,对于选择器,一个词是事件委派。有关详细信息,请参阅stackoverflow的另一个答案-只需执行$('#AddChampion')。关于('click',function(){})