概述:
我有一个网站,其中有人可以发布到Facebook的句子,但在每个句子中都有输入框,人们可以更改默认值。有点像数字“疯狂的自由”。
示例
我喜欢 _ _ ,我认为他 _ _ 。
最终字符串:我喜欢JEN,我认为她很热。
目标
保存最终字符串并发布到Facebook(不用担心Facebook)
HTML
<span>I like</span>
<input name="post1_1" value="Tom" type="text" id="post1_1" />
<span>I think she is</span><input name="post1_2" value="Nice" type="text" id="post1_2" />
<a href="javascript:Post1()">POST NOW</a>
<span>My website is</span>
<input name="post2_1" value="Great" type="text" id="post2_1" />
<a href="javascript:Post2()">POST NOW</a>
SCRIPT
<script type="text/javascript" src="js/jquery-1.6.2.min.js"></script>
<script>
var post1_1 = null;
var post1_2 = null;
var post2_1 = null;
function Post1(){
var post1_1 = $('#post1_1').val();
var post1_2 = $('#post1_2').val();
var post1 = 'I like ' + post1_1 + ' I think she is ' + post1_2;
alert(post1);
}
function Post2(){
var post2_1 = $('#post2_1').val();
var post2 = 'My website is ' + post2_1;
alert(post2);
}
</script>
我是非常新的网络任何帮助将不胜感激。
答案 0 :(得分:0)
我认为你应该只考虑两个文本字段和当前句子的ID。与sentence_id[]
,field1[]
,field2[]
一样。您可以将其视为数组:
<form action="javascript:;">
<div id="sentence-0">
<input type="hidden" name="sentence_id[0]" value="1" />
John is at <input type="text" name="field1[0]" /> with <input type="text" name="field2[0]" />
<button id="submit-sentence-0" class="submit">Send</button>
</div>
<div id="sentence-1">
<input type="hidden" name="sentence_id[1]" value="2" />
Mary is at <input type="text" name="field1[1]" /> working with <input type="text" name="field2[1]" />
<button id="submit-sentence-1" class="submit">Send</button>
</div>
</form>
只是一个想法,希望它可以帮助你。
答案 1 :(得分:0)
快速浏览一下,你的剧本有一些问题。
post1_1 = ('#post1_1').val();
post2_1 = ('#post2_1').val();
post2_2 = ('#post2_2').val();
我假设你在这里使用jQuery。您需要$
前面的()
。
post1_1 = $('#post1_1').val();
post2_1 = $('#post2_1').val();
post2_2 = $('#post2_2').val();
其次,在设置发布变量后设置它们。
var post1 = 'Your are' + post1_1;
var post2 = 'You smell like' + post2_1 + 'and' + post2_2;
这将是“你是空的”(我假设应该是“你是”)。在使用变量之前,应将变量设置为输入值。
var post1_1 = $('#post1_1').val();
var post2_1 = $('#post2_1').val();
var post2_2 = $('#post2_2').val();
var post1 = 'Your are' + post1_1;
var post2 = 'You smell like' + post2_1 + 'and' + post2_2;
alert(post1);
alert(post2);
我知道这只是一个示例,但HTML中没有post2_2
,HTML中的句子与JavaScript中的句子不匹配。
答案 2 :(得分:0)
我可以想出很多方法可以实现这个问题,但是这个问题措辞的方式会让人很暧昧地理解这个问题。
请考虑以下事项:
预先生成的陈述,例如:我喜欢X
,我认为他是Y
。
X
和Y
可以是选择的下拉列表或文本框控件。
我相信有人说像文本框一样,所以html表格是合适的。
静态示例(由php / django / rails / etc处理):
<form action="/status/" method="post">
I like <input type="text" name="noun" />
and I think he is <input type="text" name="verb" />
<input type="submit" value="Update" />
</form>
现在修改它以适合服务器端语言来处理请求。
现在有一个Javascript示例(我对js不是很好):
<form name="status" action="handle-data.js">
I like <input type="text" name="noun" />
and I think he is <input type="text" name="verb" />
<a href="javascript: submitform()">Update</a>
</form>
<script type="text/javascript">
function submitform(){
document.status.submit();
}
</script>
在handle-data.js
中,人们可能会操纵数据或诸如此类的东西。
请参阅http://www.javascript-coder.com/javascript-form/javascript-form-submit.phtml
了解更多Javascript示例。