2012-01-31 29 views
0

我在html中定義了一個隱藏的輸入字段。我正在訪問輸入字段的值,但得到undefinedjquery - 無法訪問字段的ID值有點的值

HTML

<html> 
    <head> 
     <script src="js/jquery-1.6.4.js" type="text/javascript"></script> 
     <script src="js/myjquery.js" type="text/javascript"></script> 
</head> 
<body> 
    <form> 
     <input type="hidden" name="hidden1" value="test" id="hidden1"> 
    </form> 
</body> 
</html> 

更新的HTML

<html> 
    <head> 
     <script src="js/jquery-1.6.4.js" type="text/javascript"></script>   
</head> 
<body> 
    <form> 
     <script src="js/myjquery.js" type="text/javascript"></script> 
     <input type="hidden" name="hidden1" value="test" id="hidden1"> 
    </form> 
</body> 
</html> 

更新2 HTML

<html> 
    <head> 
     <script src="js/jquery-1.6.4.js" type="text/javascript"></script>   
</head> 
<body> 
    <form> 
     <script src="js/myjquery.js" type="text/javascript"></script> 
     <input type="hidden" name="sk.hidden1" value="test" id="sk.hidden1"> 
    </form> 
</body> 
</html> 

JQuery的

$(document).ready(function() { 
    var inputParam = $("input#sk.hidden1").val(); 
    alert(inputParam); 
}); 
+3

不可再生:http://jsfiddle.net/RtDTd/ – 2012-01-31 18:14:53

+0

對我來說工作正常這個[的jsfiddle(http://jsfiddle.net/qzWRz/) – paislee 2012-01-31 18:14:56

+0

做工精細:http://jsfiddle.net/EKpx5/ – Frankie 2012-01-31 18:15:22

回答

3

野生這裏猜測,但你很可能不包括jQuery的正確的接縫。

嘗試包括jQuery的以下列方式:

<html> 
    <head> 
     <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>   
</head> 

編輯:

即使你的ID有效則皺起了眉頭uppon因爲jQuery將可以把它看成id.class。

這意味着它正在尋找一個ID = sk class = hidden1的字段。

如果必須工作,這樣的說法,你應該有一個逃生有你的選擇:

$('#sk\\.hidden1'); 

但我會sugest您的ID重命名爲成才else和丟棄的ID或類點的用法。由於兩者均受支持,因此請使用-_

The rules to name an ID are pretty simple:

  • 必須以字母開頭AZ或az
  • 可以跟隨:字母(A-ZA-Z),數字(0-9),連字符( 「 - 」),和下劃線( 「_」)
+0

我不需要這樣做,因爲其餘的jquery代碼工作正常。 – techlead 2012-01-31 18:24:27

+0

@ SK11可以在使用以下功能之前打破您的JavaScript?意思是,你在另一個打破JS解析的函數上有問題...?將有問題的代碼傳遞到您網頁的頂部。 – Frankie 2012-01-31 18:25:52

+0

+1不錯,給你一個提示,缺乏downvote:P – Jakub 2012-01-31 18:28:32

2

這對我的作品

var inputParam = $("#hidden1").val(); 

這裏是一個jsfiddle

隨着input#hidden1它仍然有效:

http://jsfiddle.net/FHTxb/1/(與input#hidden1)。

也許@ SK11的jquery沒有被正確包含?

嘗試,包括直接從谷歌的jQuery:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 

你甚至可能不會被解僱的jQuery $(document).ready()

+2

這應該不是問題的原因。 – 2012-01-31 18:15:29

+0

我傾向於投票給你,因爲即使真的沒有用ID和字段作爲選擇器......它確實與問題無關,也沒有發現任何有關瀏覽器在瀏覽器上行爲不端的行爲與OP一樣使用選擇器。 – Frankie 2012-01-31 18:19:27

+0

我發佈了更新的html – techlead 2012-01-31 18:20:00