2013-03-11 112 views
0

我現在有根據HTML輸入的輸入更新JS/JQuery的變量

 <script> 
//  window.setInterval(function() 
//  { 
      $(function() 
      { 
      var SearchTerm = '<?php echo $_POST['Search']; ?>'; 
      $.ajax({          
       url: 'Ajax/AjaxAdvSearch.php?SearchTerm='+SearchTerm, dataType: 'json', success: function(rows)   
       { 
       $('#output').empty(); 
        for (var i in rows) 
        { 
         var row = rows[i];   
         var id = row[0]; 
         var FunctionName = row[1]; 
         $('#output').append("<a href='Page.php?ID="+id+"'>"+FunctionName+"</a><br>"); 
        } 
       } 
      });  
      }); 
//  }, 5000); 
     </script> 

$_POST['Search'];從HTML文本區域得到我的高級搜索頁面這個JavaScript/AJAX請求:

<textarea name='Search' style='width: 100%; height: 150px;'></textarea><br> 

我想動態更新我的JavaScript var每次用戶鍵入到textarea,而用戶不必按提交..

因此,雖然用戶是t yping,每次使用內容更新textarea時都會動態更新。

任何人都可以提供一些幫助嗎?

回答

0

使用.change()方法的jQuery

var variableToUpdate = ''; 

$('#Search').change(function() { 
    variableToUpdate = $(this).val(); 

    // call your search from within if you want 
}); 

對於搜索作爲你型教程和插件...

http://dbachrach.com/blog/2007/04/spotlight-like-search-as-you-type-with-css-ajax-js/ http://www.jquery4u.com/plugins/14-jquery-live-search-plugins/

+2

更好的是,使用'this.val' – zakangelle 2013-03-11 21:03:18

+1

甚至更​​好,使用'$(this).val();' – BinaryTox1n 2013-03-11 21:04:04

+0

好點,你們兩個:) – 2013-03-11 21:04:21

0

讓我爲你提供一個示例

<html> 
<head><style> 

</style> 

<script> 
var DataCon; 

function UpdateDIV(){ 
    document.getElementById('updater').innerHTML=DataCon; 
} 
</script> 
</head><body> 
<div id="updater"> 
</div> 

<textarea onkeydown="DataCon=this.value;UpdateDIV()"></textarea> 

</body> 
</html> 

而且這裏你可以看到,當你輸入一個全局變量更新並伴隨它時,檢查它的工作UpdateDIV函數也給定哪個更新與ID更新的div ...

現在只是分配某些變數,並完成你的工作