#javascript #php #ajax #laravel
#javascript #php #ajax #laravel
Вопрос:
вот моя кнопка
<a onclick="myFunction()" href="{{ route('test')}}"
data-toggle="tooltip" title="آزاد سازی موجودی"
class="datatables__button"><i class="mdi mdi-format-list-bulleted"></i></a>
это мой скрипт
function myFunction() {
var person = prompt("چه مقدار موحودی آزاد شود؟", "100$");
var person1 = prompt("این موجودی را چکار کند؟", "hi");
var person2 = prompt("علت این درخواست چیست؟", "hi");
}
и я пытаюсь получить значение person здесь
Route::get('test', function (IlluminateHttpRequest $request) {
dd($request);
})->name('test');
Комментарии:
1. тогда в чем проблема?
2. вы можете передать переменную в скрытом значении post-формы, в ajax-запросе jquery или даже использовать axios в vue js
3. veriables не отправляется на php
4. и не могли бы вы, пожалуйста, написать пример?
Ответ №1:
Без ajax вы можете сделать так :
<a onclick="myFunction();">Click Here</a>
function myFunction(){
var person1= "John";
var person2= "Doe";
var person3= "Maria";
window.location.href="/test?person1=" person1 "amp;person2=" person2 "amp;person3=" person3;
}
Это будет работать, если для URI вашего маршрута установлено значение /test
amp; вы можете получить значение как dd($request->person1);
Комментарии:
1. могу ли я тоже привязать значение?
2. Да, вы можете. Просто определите как var и объедините с URL. Я отредактировал и добавил person3
Ответ №2:
вы можете передать его через ajax
<a href=""
data-toggle="tooltip" title="آزاد سازی موجودی"
class="datatables__button function"><i class="mdi mdi-format-list-bulleted"></i></a>
$('.function').on('click', function () { // perform action
var person = prompt("چه مقدار موحودی آزاد شود؟", "100$");
var person1 = prompt("این موجودی را چکار کند؟", "hi");
var person2 = prompt("علت این درخواست چیست؟", "hi");
$.ajax({
type: "GET",
dataType: "json",
url: '{{ route('test') }}',
data: {'person': person, 'person1': person1, 'person2': person2},
success: function (data) {
console.log(data.message);
}
});
});