[英]Can't make jsfiddle code work outside of jsfiddle
我在jsfiddle上找到了這段代碼,並且在fiddle內部運行良好。 但是,當我嘗試將其放入自己的HTML文件中時,我無法使其正常工作。 我確定我在腳本標簽中沒有留下任何東西,但是我只是不知道什么。 任何投入將不勝感激。
這是小提琴: 工作小提琴
PS該代碼應從URL中提取信息並填寫表格。
-謝謝
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Parser</title>
</head>
<body>
<p>Your first name:
<br /><input name="name (awf_first)" id="name (awf_first)" /></p>
<p>Your last name:
<br /><input name="name (awf_last)" id="name (awf_last)" /></p>
<p>Your email:
<br /><input name="email" id="email" /></p>
<p>Your password:
<br /><input name="password" id="password" /></p>
<script>
var hashParams = window.location.hash.substr(1).split('&'); // substr(1) to
remove the `?`
for(var i = 0; i < hashParams.length; i++){
var p = hashParams[i].split('=');
document.getElementById(p[0]).value = decodeURIComponent(p[1]);;
}
</script>
</body>
</html>
您的錯誤意味着document.getElementById(p[0])
找不到#name
和#email
輸入元素。
這可能有兩個原因:
id
的任何元素: name
和email
。 檢查您的元素,以確保為他們提供了正確的id
。 您的代碼顯示id
的元素: name (awf_first)
和name (awf_last)
,而id
應當為: name
和email
。
確保script
顯示在小提琴中顯示的大部分HTML之后(就在body
標簽關閉之前),以便在您運行該行時,元素已經位於DOM。
另外,請注意,在您的問題中, // substr(1) to remove the '?'
分為兩行,當前正在導致代碼錯誤。 並且,在該評論中,更改圍繞?
的反引號?
用單引號引起來。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.