我正在实现一个简单的网页,在该页面中,我有多个div对象,我试图做的是刷新一个div的内容,基于用户单击按钮或在输入字段中输入文本。如何刷新一个div的内容
到目前为止,我已经找到了适用于php的解决方案,我对此一无所知,有人可以为我提供使用javascript或jquery和简单html的解决方案吗?
我正在实现一个简单的网页,在该页面中,我有多个div对象,我试图做的是刷新一个div的内容,基于用户单击按钮或在输入字段中输入文本。如何刷新一个div的内容
到目前为止,我已经找到了适用于php的解决方案,我对此一无所知,有人可以为我提供使用javascript或jquery和简单html的解决方案吗?
,如果你是新来的这一切的最简单的途径是改变div的HTML。由于ID为“小马”一个div,你可以通过改变它的内容:
document.getElementById("ponies").innerHTML = '<p>new html block</p>'
如果你想换出另一个DIV的内容,你可以选择,而不是由createChild
之后修改DOM树div,然后删除div。与修改DOM本身相比,innerHTML
方法虽然简单易懂,但却是一个钝(而且很慢)的工具。但是,如果你很少这样做,并且html很简单,谁在乎?
如果你有一个用的名字,表格输入,那么你可以这样做:
function showForename(forenameDiv) {
var text = "<p>Your forename is " + document.getElementById(forenameDiv).text + "</p>";
document.getElementById("ponies").innerHTML = text;
}
而且将呼叫按钮的onClick事件:
<input type="button" value="Who am I?" onclick="showForename('forenameinput')" />
哪里forenameinput
是录名字的ID表单输入。要详细了解所有这些内容,请查看w3schools website。
我想我喜欢这里的想法,现在又有2个问题了:(1)如何在新的html中输入变量以嵌入用户的输入和(2)我习惯于OOP,那么如何应用该代码到按钮的点击事件?在此先感谢 – KamalSalem 2011-12-29 12:36:17
这取决于你想要做什么,我已经添加了一些简单情况的细节。 – 2011-12-29 14:43:03
使用jQuery的例子:
$("input.button").click(function(){
$('div#content').load('ajax/test.php', function() {
console.log('loaded.');
});
});
基于@PhilH的答案在这里清洁的jQuery解决方案:
jQuery('#yourInput').click(function(){
jQuery('#ponies').text('You wrote: ' + this.value);
});
即使在jQuery的,如果你愿意,你可以输入纯HTML:
jQuery('#yourInput').click(function(){
jQuery('#ponies').html('<span>You wrote: <b>' + this.value + '</b></span>');
});
那你试试这么远吗? – 2011-12-29 12:31:24
你打算以某种方式存储信息,或者你只是想基于某些用户输入来操纵DOM?如果您打算存储这些信息,则必须查看某种服务器端代码,例如PHP,ASP.Net或类似代码。 – 2011-12-29 12:32:26
这应该是可能的,但您可能会根据页面的结构更充实一些问题。有一个文本框的网页或是每个div一个文本框? – martincarlin87 2011-12-29 12:33:04