如何在javascript中将数据加载到特定的输入值?

时间:2015-01-25 14:18:04

标签: javascript php html ajax forms

我有这段代码,用户点击链接后从PHP加载数据。 然后我显示收到的数据到div id =“vies”:

<script>
    $(document).ready(function(){
      $("#data-received").hide();
      $("#click_me").click(function(){
        $("#data-received").show();
        $("#vies").load('127.0.0.1/get_data/', {VATID : $("#vat_id").val()});   
      });
    });
</script>


<label>VATID</label>
<input type="text" id="vat_id" name="vat_id" value="">
<a href="#" id="click_me">Check VATID</a>


<div id="data-received">
    <label>Data received from PHP</label>
    <div id="vies">.. checking ..
        <input type="text" name="put-here" id="put-here" value="test-value"/>
    </div>
</div>

问题是如何加载数据并在此处插入作为输入值

<input type="text" name="put-here" id="put-here" value="test-value"/>

而不是整个div。

2 个答案:

答案 0 :(得分:1)

<script>
    $(document).ready(function(){
        $("#data-received").hide();
        $("#click_me").click(function(){
            $("#data-received").show();
            $.post('http://127.0.0.1/get_data/', {
                VATID : $("#vat_id").val()
            }, function(data) {
                $('#put-here').val(data);
            });
        });
    });
</script>

答案 1 :(得分:1)

load()是一个便捷函数,它执行ajax请求,然后用返回的数据替换目标元素。如果您不想替换整个元素,请使用jquery.ajax()来执行请求。在成功回调中,您可以使用.val()将值设置为返回的数据。

$.ajax({
  url: "127.0.0.1/get_data/",
  data: {VATID : $("#vat_id").val()}
}).done(function(data) {
  $( '#put-here' ).val(data);
});