2014-10-19 44 views
0

我需要在我的輸入字段中封鎖一些數字。我在一個MySQL表得到了阻塞的號碼:使用jQuery的塊變量

id|number 
1 |1234 
2 |3456 

什麼我tryed:

<? 
include("connect.php"); 


$mb1=GetRow("SELECT number FROM mblock WHERE id=1"); 
$mb2=GetRow("SELECT number FROM mblock WHERE id=2"); 

?> 

<script type='text/javascript'  src='http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js?ver=1.4.2'></script> 
<input type="text" placeholder="write here" /> 
Number to block:<?echo $mb1;?> 
<p></p> 
<script> 
var badWords = ['$mb1', "2222", "3333", "4444"]; 

$("input").keyup(function(){ 
for(var i = 0; i < badWords.length; i++) 
{ 
    if(this.value == badWords[i]) 
    { 
     this.value =""; 
     return; 
    }   
} 
}) 
</script> 

.php爲被檢索的數量,但不會阻止。另一個數字是阻塞(2222,3333,4444)

THX

+0

查看源代碼,看看$ MB1陣列中輸出,任何空格或其他古怪會使你的功能故障。 – adeneo 2014-10-19 20:12:36

+0

爲什麼不在服務器端插入(或者你需要做的任何事情)而不是依賴於某些用戶可以禁用的js – Class 2014-10-19 20:14:07

+0

我在服務器端也這樣做了,如果用戶複製/粘貼一個被阻止的數字jquery不會工作,但.php會。 – 2014-10-19 22:47:18

回答

0

你確定你包括jQuery庫到您的HTML文件?

+0

是的。數字var badWords = [「2222」,「3333」,「4444」];阻塞。只有$ mb1不是。 – 2014-10-19 20:11:40

2

不應該var badWords = ['$mb1', "2222", "3333", "4444"];

var badWords = ['<?php echo $mb1;?>', "2222", "3333", "4444"];

+0

Thx,就像魅力一樣。 – 2014-10-19 20:15:44

+0

太棒了,不要忘記將此標記爲接受的答案。 – mrmryb 2014-10-19 20:17:24