【问题标题】:Jquery change text field not workingJquery更改文本字段不起作用
【发布时间】:2015-01-25 14:09:04
【问题描述】:

我试图做这个 jquery 选择的项目将显示在文本字段中但它不起作用,如果它在 div 中使用它代替使用 div 的输入文本但它不起作用以下代码作为文本字段

 <html>
<head>
 <style>
  div {
   color: red;
   }
  </style>
   <script src="//code.jquery.com/jquery-1.10.2.js"></script>
   </head>
   <body>
   <select name="sweets" multiple="multiple">
   <option>Chocolate</option>
   <option selected="selected">Candy</option>
   <option>Taffy</option>
   <option selected="selected">Caramel</option>
   <option>Fudge</option>
   </select>
   <input type="text" name="fname">
   <script>
   $( "select" )
   .change(function () {
    var str = "";
   $( "select option:selected" ).each(function() {
   str += $( this ).text() + " ";
    });
    $( "fname" ).text( str );
    })
    .change();
   </script>
   </body>
   </html>

【问题讨论】:

    标签: jquery input jquery-plugins


    【解决方案1】:

    1) 从&lt;script src="//code.jquery.com/jquery-1.10.2.js"&gt;&lt;/script&gt;更改

    &lt;script src="http://code.jquery.com/jquery-1.10.2.js"&gt;&lt;/script&gt;

    2) 将你的javascript代码放入

    $(function({
      // your JS code
    }));
    

    3) 从$( "fname" ).text( str );更改为$('input[name=fname').val(str);

    DEMO

    【讨论】:

      【解决方案2】:

      尝试使用 val 而不是文本之类的

      $("fname").val(str);

      【讨论】:

      • 这不起作用,因为 fname 不是元素。
      【解决方案3】:

      您使用 jquery 的方式有误,这里是 jsfiddle。 Solution

      您还没有使用过$(document).ready(),而且您甚至还没有分配可以访问元素的 ID 和类。希望这会有所帮助:)

      【讨论】:

        【解决方案4】:

        给输入一个 id 属性并使用 id 选择器,例如:

        <input type="text" name="fname" id="myInput">
        
        $("#myInput").val(str);
        

        "fname" 不是元素,因此您不能将元素选择器与它一起使用。

        【讨论】:

        • 既然可以按名称选择输入,为什么还要加id呢?不需要额外的标记
        猜你喜欢
        • 2012-09-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多