我正在尝试加载更多按钮。我的目标是调用ajax并将响应放在div和textarea.how中以将响应放在div和textarea中?目前响应仅显示在消息框中,但我想将结果附加到div。
* 注意: *响应是process.php生成的html超链接,我希望这些超链接放在div中
<html>
<head>
<script>
//initialize page number to 1 default
var pagenumber=1;
//pass pagenumber to function to fetch correct page records
function getResult(pagenumber){
alert('me here'+pagenumber);
$.ajax(
{
type: 'GET',
url: './process.php?ID=1234&type=1&moviePath=1234/1212/Love&title=Love&page='+pagenumber,
data: $("#myform").serialize(),
data: {
},
success: function (good)
{
//handle success
alert(good)
},
failure: function (bad)
{
//handle any errors
alert(bad)
}
});
//after every call increment page number value
pagenumber++;
}// end of getResult Function
function addMoreItems()
{
pagenumber++;
getResult(pagenumber);
}
</script>
</head>
<body>
<div id="myDiv"></div>
<div class="MoreButtonSection">
<div class="RedButton">
<span class="LeftEnd"></span>
<span class="Centre"><a href="javascript:void(0);" onclick="addMoreItems();" title="See more">see more</a></span>
<span class="RightEnd"></span>
</div>
</div>
<br>
<br>
<form id="myform" name="myform" action="./2.php?Id=&title=" method="post">
<td>
<textarea rows="7" cols="15" name="outputtext" style="width: 99%;"></textarea>
</td>
</form>
</html>
答案 0 :(得分:2)
有很多问题。
没有迹象表明你已经包含了jQuery。
您已声明数据:两次。
正如德米特里所指出的,你应该发布这个。
最后,你在哪里实际调用getResult()?它看起来不像是被调用。
此外,值得注意的是,从jQuery 1.8及更高版本开始,.success()和.failure()现已弃用,并已替换为.done()和.fail()。 http://api.jquery.com/jQuery.ajax/
答案 1 :(得分:2)
你说你的结果只显示在消息框中,而不是提醒它,只需追加即可。假设下面的div是您想要附加的内容:
<div id="myDiv"></div>
您可以修改您的成功功能:
success: function (good)
{
//handle success
$("#myDiv").append(good);
},
此外,摆脱那第二个data: {},
- 它什么都不做。
答案 2 :(得分:0)
我倾向于在这些情况下使用jQuery来简化生活,并使用$('#yourDiv').append()
函数。例如,您可以创建变量,即var mug;
,一旦填充了您的数据mug
$('#yourDiv').append("<p>"+mug+"</p>);
附加到文档中
一个example - Ajax Twitter API调用,它将推文返回到div中的特定列表(page source)
希望有所帮助!
答案 3 :(得分:0)
我想我得到的是你要做的但是那段代码很乱。正如@David L所说,你需要jQuery。但是,您不需要您编写的所有代码。它可以通过几行简单的方式完成。请用正确的元素选择器替换实际的元素选择器。
function addMoreItems() {
pagenumber++;
// get form values
var params = $('#myform').serializeArray();
// add predefined values
params.push({name: 'ID', value: '1234'});
params.push({name: 'type', value: '1'});
params.push({name: 'moviePath', value: '1234/1212/Love'});
params.push({name: 'title', value: 'Love'});
params.push({name: 'page', value: pagenumber});
// do request and insert response from server in div with id='divresults'
$.get('process.php', params, function(data) {
$('#divResults').append(data);
});
}