回答編集履歴
1
コード追記
test
CHANGED
@@ -1 +1,64 @@
|
|
1
1
|
`dataType : "json"`にしているのにPHPが戻しているデータがJSON形式の文字列じゃないのでエラーになってるんじゃないかと
|
2
|
+
|
3
|
+
試しにこんな感じのPHP組んで動かしてみたけどPHPにデータ渡りましたよ?これで渡ってなかったら違う原因があるのかも
|
4
|
+
```php
|
5
|
+
<?
|
6
|
+
if (isset($_POST['selectval'])) {
|
7
|
+
$result = '変数有り';
|
8
|
+
if ($_POST['selectval'] == 'val1') {
|
9
|
+
//val1の処理
|
10
|
+
} elseif ($_POST['selectval'] == 'val2') {
|
11
|
+
//val2の処理
|
12
|
+
} elseif ($_POST['selectval'] == 'val3') {
|
13
|
+
//val3の処理
|
14
|
+
}
|
15
|
+
echo $_POST['selectval'];
|
16
|
+
exit();
|
17
|
+
} else {
|
18
|
+
$result = '変数無し';
|
19
|
+
}
|
20
|
+
?>
|
21
|
+
<!DOCTYPE html>
|
22
|
+
<html lang="ja">
|
23
|
+
|
24
|
+
<head>
|
25
|
+
<meta charset="UTF-8">
|
26
|
+
<title>PHPテスト</title>
|
27
|
+
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/jquery@3/dist/jquery.min.js"></script>
|
28
|
+
<script>
|
29
|
+
$('document').ready(function () {
|
30
|
+
$('input[type="checkbox"]').on('click', function () {
|
31
|
+
if ($(this).prop('checked')) {
|
32
|
+
$('input[type="checkbox"]').prop('checked', false);
|
33
|
+
$(this).prop('checked', true);
|
34
|
+
var getval = $(this).val();
|
35
|
+
$.ajax({
|
36
|
+
type: 'POST',
|
37
|
+
url: 'checked.php',
|
38
|
+
dataType: 'text',
|
39
|
+
data: {
|
40
|
+
'selectval': getval,
|
41
|
+
}
|
42
|
+
}).done(function (data) {
|
43
|
+
console.log(getval);
|
44
|
+
$('#result').html(data);
|
45
|
+
}).fail(function (XMLHttpRequest, status, e) {
|
46
|
+
console.log(e);
|
47
|
+
});
|
48
|
+
}
|
49
|
+
});
|
50
|
+
});
|
51
|
+
</script>
|
52
|
+
</head>
|
53
|
+
|
54
|
+
<body>
|
55
|
+
<input type="checkbox" name="val[]" value="val1" id="ckpoint1"><label for="ckpoint1">選択肢1</label>
|
56
|
+
<input type="checkbox" name="val[]" value="val2" id="ckpoint2"><label for="ckpoint2">選択肢2</label>
|
57
|
+
<input type="checkbox" name="val[]" value="val3" id="ckpoint3"><label for="ckpoint3">選択肢3</label>
|
58
|
+
<div id="result">
|
59
|
+
<?= $result ?>
|
60
|
+
</div>
|
61
|
+
</body>
|
62
|
+
|
63
|
+
</html>
|
64
|
+
```
|