我習慣於在python中編程,我正在嘗試學習JavaScript。我希望應用程序能夠在Chrome上工作,所以不必在意跨瀏覽器。我也想寫它,而不使用jQuery或其他庫 - 因爲我只是在學習JavaScript。做功能不等待完成在行之前,他們進入下一行
我的一般問題是,通常這些函數調用看起來像是被「跳過」了。我使用螢火蟲,並沒有看到控制檯上的任何錯誤。所以,如果我有兩個電話通話中我用蟒蛇之後在功能
mydict_user_values = return_dict_of_user_names()
alert("I HAVE USER VALUES " + mydict_user_values.length)
// This next line gets called sometimes before the previous line so the values in the table filled in by next line are blank even though the dictionary above has the correct length
fill_user_name_values_into_table(mydict_user_values)
相互不明白怎麼回事。對於一個抽象的問題抱歉,但有一些關於JavaScript的基礎知識,我沒有得到。
編輯:一天-6分。我很震驚!我知道我的代碼中存在一些嚴重的新手錯誤:我在這裏列出了所有新手的壞處。
https://github.com/harijay/gridzilla_web
我的典型功能:
function return_dict_of_user_names()
{
var my_new_dict
var my_user_names = document.getElementsByClassName("my_users");
for (var i = 0; i <= my_user_names.length ; i++){
var a_num = document.getElementById("user_number_" + i).value
var a_name = document.getElementById("user_name_" + i).value
my_new_dict[i] = [a_num,a_name]
}
return my_new_dict
}
然後我有把這些值和填充在同一頁的另一部分其他JavaScript功能。
function fill_user_names_into_div(mydict){
var my_username_dict = mydict;
//Javascript code to fill in the values by lines like
my_fillable_elements = document.getElementsByClassName("user_table_fancy_entry")
for (var i = 0 ; i <= my_fillable_elements.length ; i++){
document.getElementById("usertable_user_number_" + i).value = my_username_dict[1][1]
}
不,Javascript語句是同步執行的。你沒有真正向我們展示過一個明顯的問題,所以我不認爲這是可以回答的。 –
嘿夥計們。沒有那麼快關閉這個。代碼中存在javascript錯誤,我們可以幫助他們修復。 – jfriend00
感謝Tomalak和jfriend00的耐心等待。 -3分已經是我認爲是一個很好的問題。我猜即使說「幫我的代碼不工作」本來會得到一個不那麼苛刻的反應 – harijay