別の関数で使用したい変数がありますが、それを正しく呼び出す方法がわかりません。外部 JS ファイル:
<script>
function search ()
{
var subscriptionId = "";
if (document.getElementById('deleteyes').checked)
{
alert(subscriptionId);
}
}
<script>
HTML ファイル:
<script>
$(document).ready(function() {
$.getJSON(ravenUrl + '/indexes/dynamic/Subscriptions?query=Email%253A' + email, function(json) {
subscriptions = json.Results;
var html = '';
for (var i in json.Results) {
html += '<option value="' + i + '">Edit "' + json.Results[i].Name + '"</option>';
}
$('#subscriptionSelector').append(html);
});
$("#subscriptionSelector").change(function() { //alert('#forumSelector');
var subscriptionIndex = $(this).val();
var subscriptionId = subscriptions[subscriptionIndex]["@metadata"]["@id"].substring(7);
alert(subscriptionId);
});
}
</script>
<body>
<script type="text/javascript" src="externaljsfile.js"></script>
<p>create / edit subscription</p>
<select id="subscriptionSelector"><option selected="true" value="-1">Create new</option></select>
<p>delete subscription</p>
<div style="margin-left:35px;margin-top:6px;float:left;"><input type="radio" name="delete" id="deleteno" class="div1" checked />no</div>
<div style="margin-left:35px;margin-top:6px;float:left;"><input type="radio" name="delete" id="deleteyes" class="div1"/>yes</div>
</body>
アラート (subscriptionId) は HTML ファイルから JavaScript で正しく生成されますが、外部 js ファイルのアラートは明らかに正しいサブスクリプション ID を生成していません。
これは非常に単純な問題かもしれませんが、JavaScript に関連する問題の答えを見つけるために検索を実行することさえできないスキル レベルであるため、しばらくお待ちください。前もって感謝します。