0

我是 jquery 的新手,我最近才发现它的惊人用途,所以请放轻松。

我想要做的是有一个 html 输入文本框,有一个变量立即解析输入,并通过 jquery 将包含输入文本框字符串的变量发送到 php switch 语句中。

从 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 部分工作正常。但问题是,例如,如果我声明 var a = "pass" 而不是 onchange & myFunction(); 然后 jquery 部分完美地工作并将该值传递给 jquery 和 php switch 语句,但是当我尝试使 var a = 那个输入框时,它不会通过 php。我尝试制作一个 onchange 函数,但它仍然不会使 var a 等于我在输入框中键入的内容,以便它通过 jquery 传递到 php switch 语句中。

4

3 回答 3

3

你不见了.value

var a = document.getElementById("in").value;

第二

您正在使用 jquery,如下所示

var a = $("#in").val();

改变JS函数如下

$(document).ready(function(){

  $("button").click(function(){

  $.post("runphp.php", {  jsvar: $("#in").val()}, function(jsvar){ alert(jsvar);
     });
     });
     });
于 2012-12-21T17:12:31.560 回答
1

您也可以使用 jquery 来选择值:

var a = $("#in").val();
于 2012-12-21T17:13:23.103 回答
1

jQuery 的一大好处是:

var a = document.getElementById("in");

变成

$("#in")你可以抓住价值$("#in").val()

于 2012-12-21T17:16:43.027 回答