2013-05-29 40 views
0

我有一個正常的js腳本,自從我的項目開始以來一直在工作。但是現在由於某種原因,當我點擊按鈕時什麼也沒有起作用,沒有任何響應來自點擊事件(注意這是用來工作的),並且在控制檯日誌中沒有任何顯示,表明是否有某種錯誤......腳本只是不迴應....click()在使用jQuery時不工作

下面是HTML:

<script type="text/javascript" src="js/myscript.js"></script> 

<form> 
    <input type="text" name="signinemail" id="signinemail" placeholder="Enter Email"> 
    <input type="password" name="signinpassword" id="signinpassword" placeholder="Enter Password"> 
    <input type="submit" id ="siginsubmit" name="siginsubmit" value="Sign In"> 
</form> 

這裏是我的javascript:

$(document).on('pageinit',"#sellbookpage", 
    function() 
    { 
     $("#siginsubmit").click 
      (
       function() 
       { 
        alert("hello"); 
       } 
      ); 
    } 
); 

注意我正在使用jQuery Mobile的

+2

不應該是'$(document).on('pageinit',function(){...});'?爲什麼你在第二個參數中傳遞選擇器? – nnnnnn

+1

@nnnnnn請參閱[這些文檔](http://api.jquery.com/on/#on-events-selector-data-handlereventObject)。 – ajp15243

+0

@ ajp15243 - 是的,我熟悉'.on()'方法。我質疑使用委託的'pageinit'事件。 – nnnnnn

回答

1

獲勝的回答我的問題是無關的上述任何上述職位的!造成這個問題的原因是我使用了jQuery mobile,jQuery和Twitter Bootstrap。一旦我註釋到引導程序css的鏈接,所有的東西都開始像以前一樣工作了。因此,Twitters Bootstrap與jQuery或jQuery Mobile之間必定存在衝突。

1

僅當您使用jQuery Mobile時,pageinit事件纔可用。你還在用嗎?否則,你應該使用$(document).ready(...)

+0

雅對不起,我正在使用jquery Mobile,因爲我正在製作phonegap應用程序 – user481610

0

具有u使用試圖活()

$("#sellbookpage").live('pageinit', function() { 
      $("#siginsubmit").click(function(){ 
       alert("hello"); 
      }); 
}); 
+0

剛剛嘗試了代碼以上仍然沒有,有沒有人有一些調試技術的建議,以幫助嘗試找到錯誤? – user481610

+0

如果您使用Firebug或其他調試器,請在''pageinit''處理程序中設置一個斷點以檢查您的點擊處理程序是否正在設置。 – mzedeler

+0

嘗試在'$(function(){// here here;})中包裝我的上面的代碼''這將阻止它加載,直到文檔準備好 –

0

http://api.jquery.com/on/#on-events-selector-data-handlereventObject

當提供一個選擇器,該事件處理程序被稱爲 委派。當事件直接發生在綁定元素的 上時,不會調用處理函數,但僅對於 與選擇器匹配的後代(內部元素)。 jQuery將事件從事件目標 中的事件冒泡到處理程序所附的元素(即,最內層到最外層元素 ),併爲匹配選擇器的路徑上的任何元素運行處理程序。

siginsubmitinput(其中不能包含子元素讓與id="sellbookpage"獨子元素),所以選擇字符串不匹配任何東西,單擊事件是從來沒有達到siginsubmit輸入。

它改成這樣:

$(document).on('pageinit', function() { 
    $('#siginsubmit').click(function (e) { 
     alert('hello'); 
     e.preventDefault(); 
     return false; 
    }); 
}); 

工作小提琴:http://jsfiddle.net/VG3Eg/

+0

我已將你的代碼複製粘貼到我的項目中,並確保我評論了signinsubmit的所有其他事件,但仍然沒有任何內容......它只是不會觸發.click()方法......嘆息...注意這是你從jsfiddle工作的代碼。非常感謝百萬人的幫助 – user481610