私はjqueryを初めて使用しますが、その驚くべき使用法を最近発見したばかりなので、気楽にお願いします。
私がやろうとしているのは、html入力テキストボックスを持ち、変数が入力を即座に解析し、入力テキストボックス文字列を含むその変数をjqueryを介してphpswitchステートメントに送信することです。
jqueryからphpへの部分は機能しますが、動的入力テキストボックスをjqueryの変数に送信する部分は機能しません。
これが私が持っているものです:
<script src="jquery-1.8.3.js"></script>
<input id="in" type="text" onchange="myFunction()" />
<script>
function myFunction()
{
var a = document.getElementById("in");
}
// i am trying to make this var a equal to what is typed in the input box so that it can go into the "jsvar: a" part //
$(document).ready(function(){
$("button").click(function(){
$.post("runphp.php", { jsvar: a}, function(jsvar){ alert(jsvar);
});
});
});
</script>
<button>Run php switch statement with input</button>
「runphp.php」ファイルは、機能する単なるswitchステートメントです。
<?php
switch($_POST['jsvar'])
{
case "pass":
echo "<3"; break;
case "other stuff":
echo "</3"; break;
default:
echo ":(";
}
?>
phpの部分は正常に動作します。ただし、たとえば、onchange&myFunction()を実行する代わりに、var a="pass"と宣言した場合は問題になります。次に、jquery部分は完全に機能し、その値をjqueryとphp switchステートメントに渡しますが、var a =その入力ボックスにしようとすると、phpに渡されません。onchange関数を作成しようとしましたが、varが入力ボックスに入力したものと等しくならないため、jqueryを介してphpswitchステートメントに渡されます。