我试图在php循环上实现一个开/关按钮,但由于jQuery事件的id,我无法使其工作。如何在点击时获得正确的ID并将其传递给脚本的其余部分?
问题出在$('#myonoffswitch')......
<script type="text/javascript">
$(document).ready(function(){
$('#myonoffswitch').click(function(){
var myonoffswitch=$('#myonoffswitch').val();
var wnfID=$('#wnfID').val();
if ($("#myonoffswitch:checked").length == 0) {
var a="2";
var b=wnfID;
} else {
var a="3";
var b=wnfID;
}
$.ajax({
type: "POST",
url: "ajax_wnf_status.php",
data: "statusWnf="+a+"&wnfID="+b,
success: function(html) {
$("#display").html(html).show();
}
});
});
});
</script>
我为循环行生成不同的id(例如:id =&#34;#myonoffswitch1&#34 ;; id =&#34;#myonoffswitch2&#34 ;; etc)。 / p>
答案 0 :(得分:0)
我不确定我是否完全理解这个问题,但.val()
将无法获取元素的ID。您应该使用.attr('id')
代替。
此外,您似乎正在尝试格式化GET请求的数据,而不是POST。
答案 1 :(得分:0)
如果我正确理解了这个问题,我认为您正在寻找
event.target.id
其中&#39;事件&#39;传递给你的处理程序:
('#myonoffswitch').click(function(event){
id = event.target.id
. . .
虽然在那时,你可能不需要id,因为你可以直接使用event.target。