Saya macet: Saya mencoba mengirimkan formulir menggunakan AJAX, tetapi saya tidak dapat menemukan cara untuk mengirim beberapa bidang data melalui panggilan AJAX saya.
$(document).ready(function() {
$("#btnSubmit").click(function() {
var status = $("#activitymessage").val();
var name = "Ronny";
$.ajax({
type: "POST",
url: "ajax/activity_save.php",
**data: "status="+status+"name="+name"**,
success: function(msg) {...
Saya sudah mencoba segala macam hal:
data: {status: status, name: name},
Atau bahkan hal-hal seperti ini hanya untuk tujuan pengujian:
data: "status=testing&name=ronny",
Tapi apa pun yang saya coba, saya tidak mendapatkan apa- activity_save.php
apa di SQL saya.
Jadi, sintaks apa yang benar untuk menempatkan lebih banyak baris data dalam panggilan AJAX saya?
Jawaban:
Sintaks yang benar adalah:
Sebagaimana ditentukan di sini: http://api.jquery.com/jQuery.ajax/
Jadi jika itu tidak berhasil, saya akan memperingatkan variabel-variabel itu untuk memastikan mereka memiliki nilai.
sumber
data: {status: status, name: name},
"data: { site-name: "StackOverflow" }
tidak akan berfungsi.key1=value1&key2=value2
, atau objek dari formulir{key1: 'value1', key2: 'value2'}
. Jika formulir terakhir digunakan, data diubah menjadi string kueri menggunakan jQuery.param () sebelum dikirim. "Anda dapat mengirim data melalui JSON atau melalui POST biasa, berikut adalah contoh untuk JSON.
var value1 = 1; var value2 = 2; var value3 = 3; $.ajax({ type: "POST", contentType: "application/json; charset=utf-8", url: "yoururlhere", data: { data1: value1, data2: value2, data3: value3 }, success: function (result) { // do something here } });
Jika Anda ingin menggunakannya melalui posting biasa coba ini
$.ajax({ type: "POST", url: $('form').attr("action"), data: $('#form0').serialize(), success: function (result) { // do something here } });
sumber
.serialize()
tak terdefinisi!Coba dengan kutipan:
Ini harus bekerja dengan baik.
sumber
setelah itu Anda bisa melakukan seperti:
setelah:
Benda ini berfungsi sebagai format string JSON.
sumber
Menurut http://api.jquery.com/jquery.ajax/
sumber
Yang ini berhasil untuk saya.
Inilah PHP saya:
<div id="pageContent"> <?php while($row = mysqli_fetch_assoc($stmt)) { ?> <br/> <input id="vendorName_" name="vendorName_<?php echo $row["id"]; ?>" value='<?php echo $row["vendorName"]; ?>'> <input id="owner_" name="owner_<?php echo $row["id"]; ?>" value='<?php echo $row["owner"]; ?>'> <input id="city_" name="city_<?php echo $row["id"]; ?>" value='<?php echo $row["city"]; ?>'> <button id="btn_update_<?php echo $row["id"]; ?>">Update</button> <button id="btn_delete_<?php echo $row["id"]; ?>">Delete</button> <?php } ?> </br></br> <input id = "vendorName_new" value=""> <input id = "owner_new" value=""> <input id = "city_new" value=""> <button id = "addNewVendor" type="submit">+ New Vendor</button> </div>
Inilah jQuery saya menggunakan AJAX:
$("#addNewVendor").click(function() { alert(); $.ajax({ type: "POST", url: "create.php", data: {vendorName: $("#vendorName_new").val(), owner: $("#owner_new").val(), city: $("#city_new").val()}, success: function(){ $(this).hide(); $('div.success').fadeIn(); showUsers() } }); });
sumber
Saya seorang pemula di ajax tapi saya pikir untuk menggunakan "data: {status: status, nama: nama}" metode tipe data harus disetel ke JSON yaitu
sumber
dataType
adalah respons jenis konten yang Anda harapkan dari server - bukan yang Anda kirim. Data yang Anda kirim akan selalu dikonversifoo=bar&bar=foo
.Gunakan ini
Saya mencoba banyak sintaks untuk bekerja dengan laravel, itu berfungsi untuk saya untuk laravel 4.2 + ajax.
sumber
Coba ini:
$(document).ready(function() { $("#btnSubmit").click(function() { var status = $("#activitymessage").val(); var name = "Ronny"; $.ajax({ type: "POST", url: "ajax/activity_save.php", data: {'status': status, 'name': name}, success: function(msg) {...
sumber
Saya baru mengenal AJAX dan saya telah mencoba ini dan bekerja dengan baik.
sumber
Coba gunakan:
$.ajax({ type: "GET", url: "something.php", data: { "b": data1, "c": data2 }, dataType: "html", beforeSend: function() {}, error: function() { alert("Error"); }, success: function(data) { $("#result").empty(); $("#result").append(data); } });
sumber
Inilah yang berhasil untuk saya setelah 2 hari menggaruk kepala; mengapa saya tidak bisa mendapatkan pengaturan 'data' AJaX untuk mengirim dua kunci / nilai (termasuk variabel yang berisi data gambar mentah) adalah sebuah misteri, tetapi tampaknya itulah fungsi jQuery.param () yang ditulis;
buat array params dengan variabel Anda, tanpa tanda kutip:
Gunakan ser_data variabel sebagai nilai data Anda;
Dokumentasi ada di sini: https://api.jquery.com/jQuery.param/
Semoga membantu!
sumber