Сегодня я использовал j Query $.post(); но я не могу найти причину проблемы, с которой я столкнулся. Ниже приведен фрагмент кода.
$(document).ready(function(){
//When the button 1 is clicked
$('#generateTable1').click(function(){
//Get the Json data of the product low in stock
$.post('database_to_phpJSON.php',{option:1},function(value){
value=JSON.parse(value);
console.log(value);
alert("hi");
},{dataType:'json'});
});
});
теперь, когда я запускаю код, чем я не получил предупреждающее сообщение "Привет", а в консоли firebug я не видел вывод console.log. Но поскольку я удалил dataType из своего кода, все прекрасно работало... пожалуйста, позвольте мне заговорить за это.
Это связано с тем, что при использовании $.post
вы передаете dataType только как строку
$.post('database_to_phpJSON.php', {option:1}, function(value){
console.log(value);
alert("hi");
}, 'json').fail(function() {
console.log(arguments); // will tell you what wrong
});
И результат будет автоматически анализироваться jQuery при использовании правильного типа данных
Третий параметр относится к типу данных, вам нужно передать только строку, но объект.
$.post('database_to_phpJSON.php',{option:1},function(value){
// and if you set the datatype to json, the value is already parsed.
// value=JSON.parse(value);
console.log(value);
alert("hi");
}, 'json');