希望有人能幫助解決這個問題。 我有一個PHP的foreach運行,在那裏我得到多個acticles從數據庫:JQuery:從多個同名ID的keypress獲取jquery val
@foreach ($articles as $article)
<div class="article">
<input id="comment" type="text" class="materialize-textarea" placeholder="Add comment"/>
</div>
@endforeach
比方說,我在數據庫中有2篇或更多的文章。所以在HTML端div得到重複,我有多個div具有相同的ID。
接下來我想讓jquery獲得輸入值。這裏的示例代碼
$("#comment").each(function()
{
$(this).keypress(function(e)
{if (e.which == 13)
alert('works');
});
});
結果:它完美的第一條記錄從數據庫(第一條)拉。在第二篇文章中,JavaScript並沒有觸發。 我明白這是因爲jQuery只讀取第一個div。我在網上查了一些解決方案,但沒有真正爲我工作。最合乎邏輯的解決方案似乎是將這些功能放在每個位置。但結果是一樣的。第一篇文章完美地觸發了JavaScript,其餘則沒有。
注意:如果php代碼看起來很奇怪,請忽略它,它在laravel框架上。儘管如此,它正確執行。 此處介紹的代碼僅顯示應用程序的邏輯,而不是實際的代碼。
'帶有相同ID的多個div' *** ID應始終是唯一的***使用class代替 – guradio