输入onchange时刷新div里面的php内容

时间:2014-05-03 18:55:48

标签: php jquery page-refresh

我有一个简单的<input>,当用户在那里写一些东西我需要刷新div里面的php,所以它看起来像some.php?key=thevaluefrominput。我该怎么办?我想我需要使用查询,但我不确定如何。 当您向输入内容时,我需要this之类的内容来查找标签它会更改下面的标签。

感谢您的回答。

1 个答案:

答案 0 :(得分:1)

这听起来像AngularJS的工作:) 然而,这是jQuery解决方案:

$(function () { 
  $('form').submit(function (e) {
    e.preventDefault();       
    $.ajax({
        type: 'POST',
        url: 'some.php',
        data: 'key=' + escape($.trim($('#myinputfield').val())),
        dataType: 'html'
    }).done(function (data) {
        if (data) {
            $('#divtopresent').html(data);
        }
    });
  });
}); 

如果您的意思是在用户输入时(提交前),div内容会发生变化吗?然后删除

  $('form').submit(function (e) {
    e.preventDefault();

而是把

$('#myinputfield').keydown(function () { 

我在评论中提到了一个setInterval方法,所以我发布了第一块代码,用这个代替:

$(function () { 

  var old_val = '';
  var curr_val = '';
  setInterval(function () {

    curr_val = $.trim($('#myinputfield').val());
    if (old_val != curr_val) {
      old_val = curr_val;
      $.ajax({
        type: 'POST',
        url: 'some.php',
        data: 'key=' + escape(curr_val),
        dataType: 'html'
      }).done(function (data) {
        if (data) {
            $('#divtopresent').html(data);
        }
      });
    }

  }, 2000);

}); 

它检查字段的值是否每2秒更改一次,如果您愿意,请以ms(2000)替换金额。