0
    <div ... ondblclick="setEmail()">
    <script>
    function setEmail(){
      $('#email').val('tux');
    }
    </script>
    <input type="text" id="email"/>

这不会设置元素“email”的值。问题可能是什么?

编辑

我编辑了问题,我不是在尝试更改 div 的文本,而是在尝试更改输入的值。

有一个json,如果我打开循环,这条线就可以了,

function setEmail(){
    $.each(obj,function(){
    if(){
    $('#email').val('tux');
    }
    });
}

上面的代码有效,但我不应该循环,这是不必要的。

谢谢。

4

3 回答 3

1

Give your div an ID and do the following:

<script type="text/javascript">

    function setEmail() {
        $('#email').val('tux');
    }

    $(document).ready(function () {
        $('#MyDivId').click(function () {
            setEmail();
        });
    });
</script>

this set the value of the input for me

于 2012-08-06T11:11:02.650 回答
1

div 元素没有 val,只有 html。val 仅可用于 INPUT 元素

$('#email').html('tux'); 
于 2012-08-06T10:54:02.780 回答
0

您的事件绑定是错误的:

你应该使用 onDblClick 而不是 ondblclick

于 2012-08-06T10:59:10.967 回答