Так что я занимался этим часами и не понял этого, и я знаю, что есть простое решение, поэтому я решил спросить здесь. Я пытаюсь передать значение текстовой области в ссылку как часть кнопки «Поделиться» в твиттере. Я думаю, что проблема в глобальных областях, я могу получить переменную из моего внешнего javascript, но не из моего основного файла php. Например.
Вот HTML:
<div id="share_twitter">
Friends Twitter Username (optional) <input type="text" name="friends_twitter" value="@" />
<script type="text/javascript">
window.document.write('<a href="http://twitter.com/share?text='+window.twitter_text+'&url=http://example.com/<?php echo $slug;?>" class="twitter-share-button"></a>');
</script>
Затем у меня есть Javascript в extenral.js, который должен получить значение "friends_twitter" и отправить его обратно на главную страницу, что позволит мне создать динамическую ссылку на этот твиттер.
Я попробовал это var friends_twitter_input = $("input[name=friends_twitter]");
, но получил undefined
, если я сделаю window.friends_twitter_input = $("input[name=friends_twitter]");
, это работает немного лучше, но все же не так, как предполагалось.
Я также написал код для обнаружения изменения ключа, который работает, но только если он находится внутри external.js
Возможно, я все делаю неправильно, но, похоже, я не могу этого понять. Anyhelp было бы здорово.
Обновление
Я получаю сообщение об ошибке "friends_twitter_input не определен" в firebug, но не уверен, почему
внутри custom.js
$(document).ready(function(){
var friends_twitter_input = $("input[name=friends_twitter]").val();
$(".twitter-share-button").click(function() {
var friends_twitter_input = $('input[name=friends_twitter]').val();
});
}
внутри index.php
<script type="text/javascript">
window.document.write('<a href="http://twitter.com/share?text='+friends_twitter_input+'&url=http://example.com/<?php echo $slug;?>" class="twitter-share-button"></a>');
</script>
Я думаю, что мне не нужно писать ссылку на ресурс, пока вход не получит значение или не определит значение как ноль.
Спасибо за помощь.