作者shihyanyu (院長:沒把馬英九教好)
看板Ajax
標題[問題] jQuery Ajax取不到值
時間Sat Aug 1 05:16:34 2015
各位大大好... 我是Ajax新手
在網路上參考這個網頁
http://www.helloweba.com/view-blog-143.html
套用在我的網站上做登入登出的功能
因為我本身又有用Bootstrap 好不容易解決jQuery版本衝突的問題(用noConflict)
但是!!! 老是取不到帳號密碼的值啊囧
Google了好久 決定來板上拜見各位大神 希望能指點一下 非常感謝!!!
--------------------------表單本身是DIV的
<div id="login_form">
<label>帳號</label>
<input type="text" class="input cur_select" id="mimiuser" name="mimiuser" />
<BR />
<label>密碼</label>
<input type="password" class="input" id="mimipass" name="mimipass" />
<div class="sub"><input type="submit" class="btn" value="登入"/></div>
</div>
---------------------------------------JS是放在同一頁
j(".btn").live('click',function(){
var mimiuser = j("
#mimiuser").val();
var mimipass = j("
#mimipass").val();
alert(mimiuser);
alert(mimipass);
}
---------------------------------------
alert出來都是空的 不管我改attr 還是其他亂七八糟 都沒用.... Orz
難道取不到值也是因為版本衝突問題嗎???
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.229.111.135
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Ajax/M.1438377397.A.1DD.html
1F:→ anest: live在jquery1.7以後已經失效 改用on 08/01 05:27
2F:→ shihyanyu: 感謝anest大人 直接改on還是不能動 但多了一個新方向 08/01 11:27
3F:→ fgh81113: 幾個問題 1.瀏覽器為何? 2.jquery版本 3.打開瀏覽器主控 08/01 12:00
4F:→ fgh81113: 臺看一下html和你原來寫的是不是如你想的 08/01 12:01
5F:→ MangoTW: 先把 type 改為 button 試試 08/01 12:50
6F:推 kyoe: bootstrap好像會把input改樣式,所以你的input又被包一層了吧 08/01 14:37
7F:→ shihyanyu: 謝謝各位大大指點~~ 我會馬上試試看!! 08/01 14:52
8F:→ shihyanyu: <input type="button" class="btn" value="送出"/> 08/01 15:21
9F:→ shihyanyu: 終於可以了~~~ 08/01 15:21
10F:→ shihyanyu: 不對QAQ 好像還是不行..... 像這種活請人做會貴嗎? 08/01 15:24
12F:推 swallowcc: 另外要請人做的話要把需求說好,光看上面這一段完全不 08/01 15:54
13F:→ swallowcc: 曉得你的需求是什麼啊,更不用說開價了 ._. 08/01 15:54
14F:→ MangoTW: 元素名 input 也改成 button 試試 08/01 17:18
15F:→ MangoTW: 記得收尾</button> 08/01 17:18
改了:
<button type="submit" class="btn" id="btn">送出資料</button>
j(".btn").live('click',function(){
var mimiuser = j('
#mimiuser').val();
var mimipass = j('
#mimipass').val();
alert(mimiuser);
alert(mimipass);
還是取不到值 難道是
j('#mimiuser').val();有問題?
我參考Google把外面function改成這樣 也是不行
j("document").on("click",".btn",function(){
不行
j("#login_form").on("click",".btn",function(){
不行
※ 編輯: shihyanyu (36.229.111.135), 08/01/2015 17:29:49
※ 編輯: shihyanyu (36.229.111.135), 08/01/2015 17:40:25
16F:→ swallowcc: 問一下,為什麼你要用 j("").on ? 08/01 17:42
17F:→ shihyanyu: 因jQury版本衝突 用var j = jQuery.noConflict(true); 08/01 17:52
18F:→ MangoTW: type如果用submit記得在event先prevent掉,不然會跳頁 08/01 17:57
19F:→ fgh81113: 你瀏覽器<input type="text" id="miniuser"> id還是 08/01 20:09
20F:→ fgh81113: miniuser嗎? 有些framework會把id偷偷改掉 08/01 20:10
21F:→ shihyanyu: 天啊!... 我打錯了 是mimiuser 08/01 21:48
22F:→ shihyanyu: 呃 沒有打錯字@@ 我去GOOGLE看看輸出後ID有沒有變好了 08/01 21:50
23F:→ fgh81113: 恩....是我打錯字的樣子XD 08/01 23:03
24F:→ fgh81113: 然後用檢查元素去看就好了不用google 08/01 23:04
囧囧有神的真相報告
後來有大人直接看我的網站 說我的DOM都被CLONE變兩個
後來另一位大人提醒表單也變兩個 難怪都抓不值
然後刪除了嵌在各處的一堆 jQuery.js 1.9 / 1.7 /1.4 以及謎之版本以後
終於在2.1.3得救了
一堆套件 包括 Bootstrap select live search 跟 fancybox 全部用這一個就行了
http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.js
謝謝各位大人 下台一鞠躬........
※ 編輯: shihyanyu (36.229.111.135), 08/03/2015 04:26:12
※ 編輯: shihyanyu (36.229.111.135), 08/03/2015 04:35:11
25F:推 Kenqr: jQuery2.x不支援IE8喔 08/03 10:59
26F:→ shihyanyu: 天啊 謝謝大人提醒 我等下去試試看 08/03 15:53
27F:→ shihyanyu: 剛剛在IE 11.1測試可以跑 ^^"那就先降吧 08/03 15:56