jQuery 切换不同的属性并应用 ajax
jQuery toggle with different attributes and apply ajax
我正在使用这个 jQuery 插件来制作切换,但我有一个问题,当我制作多个具有相同 ID 和 class 的切换时,所以在那种情况下我无法识别用于在更改值时应用自动加载 ajax 的特定切换。
我想问一下我如何使用相同的插件但不同的 id 或 class 或名称进行相同的切换,所以我使 ajax 的功能就像我单击切换时一样,它将在 PHP 中更新而不提交提交按钮。
我使用的插件是this one
我使用的代码是这样的:
HTML
<p>Default: <span class="easyswitch"></span></p>
<p>Checked: <span class="easyswitch" data-default="1"></span></p>
脚本
<script>
$('.easyswitch').easyswitch();
</script>
AJAX
$('MY_CLASS_NAME').change(function(){
var mode= $(this).prop('checked');
$.ajax({
type:'POST',
dataType:'JSON',
url:'test.php',
data:'mode='+mode,
success:function(data)
{
$("body").html('Operation Saved');
}
});
你无法处理easyswitch's change event
。您需要创建它的 click event
,然后您可以从中获取当前切换的状态。
$('.easyswitch').easyswitch();
$('.easyswitch').click(function () {
var mode = $(this).hasClass('on');
toogleStatus(mode);
});
// for all controlls.
$(".easyswitch").each(function() {
var mode = $(this).hasClass('on');
toogleStatus(mode);
});
function toogleStatus(mode)
{
if (!mode) {
alert('checked')
}
else {
alert('unchecked')
}
}
尝试使用 callback
选项
$('.easyswitch').easyswitch({
callback: function(val, ele) {
$.ajax({
type: 'POST',
dataType: 'JSON',
url: 'test.php',
data: { mode: val },
success: function(data) {
$("body").html('Operation Saved');
}
});
}
});
我正在使用这个 jQuery 插件来制作切换,但我有一个问题,当我制作多个具有相同 ID 和 class 的切换时,所以在那种情况下我无法识别用于在更改值时应用自动加载 ajax 的特定切换。 我想问一下我如何使用相同的插件但不同的 id 或 class 或名称进行相同的切换,所以我使 ajax 的功能就像我单击切换时一样,它将在 PHP 中更新而不提交提交按钮。
我使用的插件是this one
我使用的代码是这样的:
HTML
<p>Default: <span class="easyswitch"></span></p>
<p>Checked: <span class="easyswitch" data-default="1"></span></p>
脚本
<script>
$('.easyswitch').easyswitch();
</script>
AJAX
$('MY_CLASS_NAME').change(function(){
var mode= $(this).prop('checked');
$.ajax({
type:'POST',
dataType:'JSON',
url:'test.php',
data:'mode='+mode,
success:function(data)
{
$("body").html('Operation Saved');
}
});
你无法处理easyswitch's change event
。您需要创建它的 click event
,然后您可以从中获取当前切换的状态。
$('.easyswitch').easyswitch();
$('.easyswitch').click(function () {
var mode = $(this).hasClass('on');
toogleStatus(mode);
});
// for all controlls.
$(".easyswitch").each(function() {
var mode = $(this).hasClass('on');
toogleStatus(mode);
});
function toogleStatus(mode)
{
if (!mode) {
alert('checked')
}
else {
alert('unchecked')
}
}
尝试使用 callback
选项
$('.easyswitch').easyswitch({
callback: function(val, ele) {
$.ajax({
type: 'POST',
dataType: 'JSON',
url: 'test.php',
data: { mode: val },
success: function(data) {
$("body").html('Operation Saved');
}
});
}
});