How do you pass a variable from jQuery to PHP without a page refresh? When I click on a checkbox I would like to pass a variable from jQuery to PHP. I am also using formdialog.
My PHP code
<?php
echo "<input name='opendialog' type='开发者_运维问答checkbox' class='opendialog' onclick='countChecked()' value=".$taskid." ?>" /> </td>"
?>
my javascript code
function countChecked() {
var n = $("input:checked").length;
var allVals = [];
$('input:checkbox:checked').each(function() {
allVals.push($(this).val());
});
$('.sel').text(allVals+' ');
$('.select1').val(allVals);
alert(allVals);
<?php $taskidj=$rowtask['taskID'];
// echo "aaa...".$rowtask['taskID']; ?>
}
$(":checkbox").click(countChecked);
// my jquery code
$('.mydialog').dialog({
bgiframe: true,
autoOpen: false,
modal: true,
width: 700,
height:500,
resizable: false,
open: function(){closedialog = 1;$(document).bind('click', overlayclickclose);},
focus: function(){closedialog = 0;},
close: function(){$(document).unbind('click');},
buttons: {
Submit: function(){
var bValid = true;
// allFields.removeClass( "ui-state-error" );
// bValid = bValid && checkLength( name, "username", 3, 16 );
// bValid = bValid && checkRegexp( name, /^[a-z]([0-9a-z_])+$/i, "Username may consist of a-z, 0-9, underscores, begin with a letter." );
if ( bValid ) {
processDetails();
return false;
}
},
Cancel: function() {
$( this ).dialog( "close" );
$('input[name=opendialog]').attr('checked', false);
}
}
});
$('.opendialog').click(function() {
$('.mydialog').dialog('open');
closedialog = 0;
});
Ajax can do this. Google it, and check out api.jquery.com and look at the ajax functions, .ajax(), .post(), .get(), .load(), etc.
As for your specific question, here is what you would do:
//Javascript file
$("input[type=checkbox]").click(function () {
$.post('my_ajax_receiver.php', 'val=' + $(this).val(), function (response) {
alert(response);
});
});
//PHP file my_ajax_receiver.php
<?php
$value = $_POST['val'];
echo "I got your value! $value";
?>
精彩评论