Jquery将选项值发布到PHP

时间:2010-03-01 12:07:34

标签: php jquery

如何使用Jquery从所选数据发布数据到PHP?

HTML code:

<select id="test" title="test" class="test">
  <option value="1">1
  <option value="2">2
  <option value="3">3
  <option value="4">4
  <option value="5">5
 </select>

Jquery的:

$('.18').click(function(event) {
  var test_s = $('#test').val();
  $('.opc_mfont').load("index.php?x=18&fid=<?=$fid;?>&mid=<?=$mid;?>&data=' + test_s +'");
  event.stopPropagation();
});

所有数据都成功发布到PHP和MySql查询,除了'+ test_s +'和jquery load()之外。

我通过“alert(test_s);”测试了从选择字段收到的数据并且警报消息显示正确的数据。但是我不能使用jquery load()向PHP发送“var test_s”。我怎么能这样做?

3 个答案:

答案 0 :(得分:3)

你的问题是你的字符串:

"index.php?x=18&fid=<?=$fid;?>&mid=<?=$mid;?>&data=' + test_s +'"

这不是字符串连接 - 你正在混合你的字符串分隔符。你想要:

"index.php?x=18&fid=<?=$fid;?>&mid=<?=$mid;?>&data=" + test_s

答案 1 :(得分:2)

来自jQuery .load():

如果数据作为对象提供,则使用POST方法;否则,假设GET。

请在此处阅读:http://api.jquery.com/load/

未经测试,可能是这样的:

$('.opc_mfont').load("index.php?x=18&fid=<?=$fid;?>&mid=<?=$mid;?>", {'data':test_s});

答案 2 :(得分:2)

你把单引号和双引号混为一谈:

$('.18').click(function(event) {
  var test_s = $('#test').val();
  $('.opc_mfont').load('index.php?x=18&fid=<?=$fid;?>&mid=<?=$mid;?>&data=' + test_s);
  event.stopPropagation();
});