jQuery - 如何在表单提交后更改div文本

3
我有一个表单用来输入方向并显示谷歌地图。
<form action="#" onsubmit="setDirections(this.from.value, 'address', 'en_US'); return false">

在表单之外,我有以下内容:

Formatted Directions<div id="printdirec"><a href="http://maps.google.com/">Print Directions</a></div>

我希望修改div标签“printdirec”内的值,让其显示其他内容。

我尝试了以下方法(我认为应该可以),但实际上不行:

    <script type='text/javascript'>
        $(document).ready(function() {

        $(":submit").click(function(e) {
                $('div.printdirec').val('tttt')
            });

        });
</script>

我做错了什么,你有任何建议吗?

4个回答

5

#符号标识元素的ID。使用.text()设置内部文本。

$('div#printdirec').text('tttt');

3

更可靠的方法是处理 submit 事件,它可以得到以下结果:

$("form#id-of-your-form").submit(function(e) {
    $('#printdirec').html('tttt');
});

请查看选择器以了解基本的选择器语法,快速浏览一遍可以消除对如何正确地定位元素的任何进一步困惑。


2
这行代码:
$('div.printdirec').val('tttt')

查找所有classprintdirec

元素。你需要通过id引用它。另外,你需要设置
元素的文本内容而不是值。试试这个:

$('#printdirec').text('tttt');

1
$("div#printdirec").html("tttt");

你真的应该把所有的提交逻辑放在同一个位置。没有必要将它放在标记中。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接