Javascript 获取动态创建的元素jquery的id和值
我需要IDA和其他属性,比如我以前在ajax事件中创建的跨度的值。 有办法做到这一点吗 以下是如何在php post上创建跨度:Javascript 获取动态创建的元素jquery的id和值,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我需要IDA和其他属性,比如我以前在ajax事件中创建的跨度的值。 有办法做到这一点吗 以下是如何在php post上创建跨度: echo "<span class='non-skin-symptom-choice disease_option' ". "onclick='showinfo(".$var[0].");' id=".$var[0].">" .$var[1]." -- ".number_format($var[3]*100, 2,
echo "<span class='non-skin-symptom-choice disease_option' ".
"onclick='showinfo(".$var[0].");' id=".$var[0].">"
.$var[1]." -- ".number_format($var[3]*100, 2, '.', '')."%</span>";
复选框不是动态创建的,因此$.chb.clickfunction{}可以工作
不知何故,$this.attrid可以工作,但$this.attrval返回未定义的。。。我还尝试了$this.attrvalue,但结果相同$this.val返回空。使用
$(document).on('click','.chb',function(){
var id = $(".non-skin-symptom-choice").attr("id");
})
由于它有一个高级事件附件,并且可以获取在运行时创建的元素,因此您正在使用的单击绑定称为直接绑定,它将仅将处理程序附加到已经存在的元素。它不会绑定到将来创建的元素。要做到这一点,您必须使用
$(document).on('click','.chb',function(){
var id = $(".non-skin-symptom-choice").attr("id");
})
可能重复:试试这个
alert($(".non-skin-symptom-choice").attr("id"));
如果加载页面时您的DOM节点不存在,即加载页面后通过AJAX将其添加到页面中,那么如果您尝试更新它或使用jQuery方法读取它,jQuery将无法看到它。克服此问题的一种方法是设置jQuery函数,以引用要定位的节点的父类的类或ID(假设父类在页面加载时加载到页面中),以及要定位的节点的类。例如:
$(".chb").click(function(){
var id = $(".your-parent-class .non-skin-symptom-choice").attr("id");
}
}
$.non-skin-symptom-choice.attrid@Tauri28-假设只有一个。非皮肤症状选择,可能不是这样,或者他们不需要特定的id。你的.chb类在哪里?@Kartikeya这里需要什么事件授权??你们读到问题了吗?第一:永远不要使用$this.attrid,只使用this.id你们不必对所有的事情都使用jQuery…,第二:你们需要从哪里获得id?在用onclick调用的函数中,还是在其他地方?第三:显示html,而不是与JavaScript无关的php,后者在浏览器中运行**我知道服务器端JavaScript,但您没有使用它。复选框不是动态创建的。不知何故,$this.attrid可以工作,但$this.attrval返回未定义的。。。我还尝试了$this.attrvalue,但结果相同$this.val返回空。由于span没有value属性,请使用此var值=$。non-skin-symptom-choice.html;啊。。。这就是为什么。谢谢html;应该有用。0:
$(".chb").click(function(){
var id = $(".your-parent-class .non-skin-symptom-choice").attr("id");
}
}