如何获取li标签属性数据值并设置输入标签的值?

时间:2017-11-03 18:08:54

标签: javascript php jquery html

这是我的示例echo:

echo '<li data-value="' . $row->id . '"class="option"><img src="' . $row->image . '">' . $row->name . '</li>';

所以我从数据库中检索值并将值设置为li tag data-value。

Jquery的:

$(".ul_movie2").on('click', 'li', function () {
    var movie_id = $(this).attr('data-value');
    console.log(movie_id)
    alert('Text is ' + movie_id);
        $.ajax({
            url:"mymoviemanagement.php",
            data:{data:movie_id},
            type:'POST',
            success:function(data) {
                $('#result').val(movie_id);
            }
        });

});

HTML:

<input type="text" value="" id="result">;

这是我的意见。所以在Jquery你可以看到我将值设置为输入,但输入没有得到值。输入只显示值。

示例我的值是84,输入标签显示84,但我检查元素它显示我:

<input type="text" value id="result">==$0

这意味着我没有将值设置为输入标记值,它只显示,内部没有真正的值。

那么我如何获得li attr(&#39;数据值&#39;)并将值设置为输入标签?

2 个答案:

答案 0 :(得分:2)

两件事:

要获取data-value的值,请更改此项:

 var movie_id = $(this).attr('data-value');

对此:

 var movie_id = $(this).attr('data-value').val();

然后以这种方式设置响应:

 $('#result').innerHTML = movie_id;

您的守则现在:

 $(".ul_movie2").on('click', 'li', function () {
  var movie_id = $(this).attr('data-value').val();
  console.log(movie_id)
  alert('Text is ' + movie_id);
    $.ajax({
        url:"mymoviemanagement.php",
        data:{data:movie_id},
        type:'POST',
        success:function(data) {
            $('#result').html = movie_id;
        }
    });

});

答案 1 :(得分:0)

如果要设置数据值属性值,请使用

   $("#result").attr("data-value", movie_id)