Проблема с jQuery .post () не работает
Вопрос
Итак, я новый, чтобы использовать jQuery .post () Однако я не использую методы, которые я еще не использовал раньше.
Я пытаюсь опубликовать два скрытых входных значения, когда нажата кнопка:
$('#button').live('click', function() {
$.post('export_file.php', { group: form.group.value , test: form.test.value },
function(output) {
$('#return').html(output).show();
});
});
.
Я испытал событие кнопки успешно и в настоящее время все, что я пытаюсь сделать в export_file.php
, является эхом-то.
Вот моя форма:
<form name="form">
<input type="hidden" name="group" value="<?echo $group;?>">
<input type="hidden" name="test" value="<?echo $test_id;?>">
<input type="button" class="Mybutton" id="button" name="btnSubmit" value="Export Results">
</form>
.
У меня есть мой div на оригинальной странице:
<div id='return'></div>
export_file.php:
<?php
echo "whatever, something!";
?>
.
Может ли кто-нибудь указать, где я пойду не так.Большое спасибо,
Решение
Fix this line:
$.post('export_file.php', { group: form.group.value , test: form.test.value },
Change it to something like this:
var group_val = $('input[name="group"]', 'form[name="form"]').get(0).value;
var test_val = $('input[name="test"]', 'form[name="form"]').get(0).value;
$.post('export_file.php', { group: group_val , test: test_val },
Другие советы
Try:
$('#button').live('click', function() {
$.post('export_file.php', { group: $("input[name='group']").val() , test: $("input[name='test']").val() },
function(output) {
$('#return').html(output).show();
});
});
I've added ids to your form elements in your HTML:
<form name="form">
<input type="hidden" name="group" id="group" value="<?echo $group;?>">
<input type="hidden" name="test" id="test" value="<?echo $test_id;?>">
<input type="button" class="Mybutton" id="button" name="btnSubmit" value="Export Results">
</form>
Then amended the jQuery to get the values from these fields by ID, and use these in the parameters of your AJAX call:
$('#button').live('click', function() {
var groupValue = $("#group").val();
var testValue = $("#test").val();
$.post('export_file.php', { group: groupValue , test: testValue },
function(output) {
$('#return').html(output).show();
});
});
try this one
$('#button').live('click', function() {
var group_val = $("input[name='group']").val(); // gets the value of hidden field with the name group
var test_val = $("input[name='test']").val(); // gets the value of hidden field with the name test and store it in test_val variable
$.post('export_file.php', { group: group_val , test: test_val },
function(output) {
$('#return').html(output).show();
});
});