通过单击img在输入上显示框

时间:2014-05-12 04:46:53

标签: javascript jquery html

我希望如果我点击图片,则使用$('.daterangepicker').show();在输入字段中显示该框。

on onclick:

onclick="OpenDatePicker('DateAge')

标记:

<span class="DateLabelImage" style="cursor: pointer" onclick="OpenDatePicker('DateAge')"><img class="calendarImage" src="../../img/StatImg.png"></span>
<input type="text" id="DateAge" placeholder="Click to open Date Box" class="AgeChangeInput range"/>

脚本:

<!-- Call datepicker through image button -->
<script>
function OpenDatePicker(DatePicker)
{
    var classIt = '.' + DatePicker;
    alert(classIt);

    // Click on any Input Field.
    $(classIt).on('click', function()
    {
        alert('Good');
        // Show Box on click Date.
        $('.daterangepicker').show();
    });
}
</script>

我尝试使用:

.on('click', function()

但这不起作用,因为我没有点击输入字段而是点击图像。

3 个答案:

答案 0 :(得分:2)

http://jsfiddle.net/vikramjakkampudi/9NMgT/1/

function OpenDatePicker(DatPicke)
{
    var classIt = '#' + DatPicke;
    alert(classIt);

    // Click on any Input Field.
    $(classIt).on('click', function()
    {
        alert('Good');
        // Show Box on click Date.
      //  $('.daterangepicker').show();
        $('.ui-datepicker-div').show();
    });
}

答案 1 :(得分:1)

click事件应该在ready或document.ready函数中绑定。 另一件事是&#39; DateAge&#39;是一个不是一个班级,所以你应该打电话给#&#39;#&#39;不是&#39;。 我的事情会发挥作用。

$(document).ready(function () {
        $("#DateAge").click(function () {
            alert('Good');
            $('.daterangepicker').show();
        });
    });

答案 2 :(得分:0)

我认为它应该是#而不是.。其次,我在标记中找不到.daterangepicker。我提到的改变了。链接在这里 http://jsbin.com/feyunagi/1/edit