我的select db中有两个结果是text_1和text_2,它们有不同的ID,但是当我点击text_2时它会提示text_1的id
我的php echo
echo'<p><input id="textid" type="hidden" value="'.$msg->id.'">'.$msg->text.'</p>';
这是我的js代码
var getid= document.getElementById('textid').value;
$("p").click(function(){
alert(getid);
});
答案 0 :(得分:3)
您不能使用两个输入相同的id
。 ID
应该唯一,每页只有1个ID。但我猜测,因为你没有发布超过1行的HTML。
我在输入标记上将您的id
更改为class
。
然后移动里面的点击功能以定位点击的p
。获取输入值的正确方法是使用.val()
而不是.value
。
$("p").click(function(){
var getid= $(this).children('.textid').val();
alert(getid);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p><input class="textid" type="hidden" value="VALUE IS 1">'.$msg->text.'</p>
<p><input class="textid" type="hidden" value="VALUE IS 2">'.$msg->text.'</p>
&#13;
答案 1 :(得分:1)
<强> PHP 强>
echo'<p><input id="textid_1" type="hidden" value="'.$msg->id.'">'.$msg->text.'</p>';
echo'<p><input id="textid_2" type="hidden" value="'.$msg->id.'">'.$msg->text.'</p>';
<强> JS 强>
$("p").click(function(){
alert($(this).find("input").val());
});