通过javascript传递一个动态文本输入到一个链接



所以我已经在这个几个小时,还没有弄清楚,我知道有一个简单的解决方案,所以我想我会问这里。我试图将文本区域的值传递到一个链接中,作为twitter共享按钮的一部分。我认为问题是与全局范围,我能够从我的外部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>

然后我在extra .js中有Javascript,它应该得到"friends_twitter"的值,并将其发送回主页,这将允许我动态链接到那个人的twitter。

我尝试了这个var friends_twitter_input = $("input[name=friends_twitter]");,但得到了undefined,如果我做window.friends_twitter_input = $("input[name=friends_twitter]");,它的工作稍微好一点,但仍然不是预期的。

我还编写了代码来检测关键的变化,但只有当它被放置在外部。js

我可能做错了,但我似乎不能把它弄清楚。任何帮助都会很好。

我在firebug中得到错误"friends_twitter_input未定义",但不确定为什么

在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>

我认为我不需要写共享链接,直到输入有一个值或定义值为空。

谢谢你的帮助

不太清楚你所有代码的结构,但有一些事情可能会有所帮助。

要从输入按钮获取值,这是您需要的代码。

var friends_twitter_input = $("input[name=friends_twitter]").val();

还要确保尝试读取输入文本值的代码在输入文本就位后执行。

要在页面加载后执行javascript,请使用:

$(document).ready(function() {
  //All your javascript here.
});

要连接到输入文本的oncahange事件,请执行以下操作(在ready处理程序中)

$("input[name=friends_twitter]").onchange(function() {
     var friends_twitter_input = $(this).val();
});

请注意,onchange事件中的代码只是用于演示目的,您可能想要使用onblur或更好地在提交按钮的onclick事件中挂钩

相关内容

  • 没有找到相关文章

最新更新