我不确定为什么我没有将data-id
值显示为undefined
data-id
显示一个int
<li>
<input style="width:100%;" placeholder="Page Title" id="post_title" onclick="urlCheck()" dataid="<?php echo($website_id);?>" name="post_title" type="text" value="<?php echo set_value('post_title', $post['post_title']); ?>" />
<?php echo form_error('post_title'); ?>
</li>
JS:
function urlCheck() {
$(".postForm").on('click', '#post_title', function (e) {
var id = $('#post_title').attr("data-id");
console.log(id);
e.preventDefault();
});
}
答案 0 :(得分:5)
问题是您使用的是dataid
而不是data-id
,要检索属性,您需要使用.data()
代替.attr()
改变这个:
<input style="width:100%;" placeholder="Page Title" id="post_title" onclick="urlCheck()" dataid="<?php echo($website_id);?>" name="post_title" type="text" value="<?php echo set_value('post_title', $post['post_title']); ?>" />
到此:
<input style="width:100%;" placeholder="Page Title" id="post_title" onclick="urlCheck()" data-id="<?php echo($website_id);?>" name="post_title" type="text" value="<?php echo set_value('post_title', $post['post_title']); ?>" />
并以此模式检索数据:
var id = $('#post_title').data("id");
答案 1 :(得分:3)
您的属性为dataid
,而不是data-id
。