Jquery 可排序检索更改时隐藏的 Id

Jquery Sortable retrieve hidden Id on change

我正在使用 jquery 可按特定顺序排列的图像,我想做的就是更改图像的隐藏 ID 和新的当前位置编号,这样我就可以 运行 ajax 请求更新我数据库中的新位置,但是当我更改图像位置时,警报未触发(在下面的代码中)所以我想知道我做错了什么。

Jquery代码

<script>
        $(function() {
            $("#sortable").sortable({
                stop: function(event, ui) {

                    $('input.imageHiddenImageId').each(function(idx) {

                        var imageId = (this).val();
                        alert("New position: " + ui.item.index() + "id:" + imageId);
                        //Run some AJAX code to server
                    });

                }
            });
            $( "#sortable" ).disableSelection();
        });
    </script>

HTML代码

<ul id="sortable">
   <li class="ui-state-default">
      <img src="http://localhost/site/gallery/3.png" style="max-width: 100%; height: auto;">
      <input type="hidden" class="imageHiddenImageId" id="imageHiddenImageId" name="imageHiddenImageId" value="45">
      <input type="hidden" id="imageHiddenNo" name="imageHiddenNo" value="2">
    </li>
 </ul>

感谢您的帮助

您的代码中有错字。 javascript 中没有默认的 val() 方法。应该是 $(this).val();this.value 检查这个 fiddle http://jsfiddle.net/tkay/mqtLh5ez/

  $(function() {
            $("#sortable").sortable({
                stop: function(event, ui) {

                    $('input.imageHiddenImageId').each(function(idx) {

                        var imageId = $(this).val();
                        alert("New position: " + ui.item.index() + "id:" + imageId);
                        //Run some AJAX code to server
                    });

                }
            });
            $( "#sortable" ).disableSelection();
        });