0

私はいくつかの入力を持っています、いくつかはデフォルト値で提供され、いくつかは空で、動的に選択値で埋められます

選択すると、選択ボックスの値が入力テキストに挿入されます。

問題は、テキストフィールドが空で、後で選択値で埋められ、リセット/クリアボタンを使用すると、入力テキストが空にならず、動的に挿入された値が保持されている場合です。

入力:

<input type="text" value="" name="yahoo">
<input type="text" value="some default value" name="google">
<button class="button clear" type="button" accesskey="x">Clear</button>

Jquery:

$('button.clear').click(function () {
  $('input').val(''); // this clears google, but not yahoo
});

また、一部の選択ボックスは、値をテキストフィールドに動的に入力します。テキストフィールドを完全に空にするアイデアはありますか?ありがとう

手順:

  1. 選択ボックスを変更します

  2. selectの値がテキストフィールドに挿入されます。すべては順調です

  3. 問題は、デフォルトが空の場合、クリアボタンがテキストフィールド(動的に入力される)を空にしないことです。

簡略化したコードで質問を明確にします。

$('select').swicthClass();

$.fn.swicthClass = function (options) {
 // .............
};

var src = 'some-value-from-select-box'; // hence good, bad etc
$('body.bad').find('input[name="yahoo"]').val(src); 



<select>
  <option selected="selected" value="good">Good</option>
      <option value="bad">Bad</option>
      <option value="worse">Worse</option>
      <option value="damn">Damn</option>
    </select>
4

2 に答える 2

2

あなたはこれを試してみたいかもしれません

$('button.clear').click(function () {
  $('input').val('');
});

$("select").on("change", function() {
  var src = 'good';
  $('[name=yahoo]').val(src); 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<input type="text" value="" name="yahoo" >
<input type="text" value="some default value" name="google">
<button class="button clear" type="button" accesskey="x">Clear</button>

<select>
  <option selected="selected" value="good">Good</option>
  <option value="bad">Bad</option>
  <option value="worse">Worse</option>
  <option value="damn">Damn</option>
</select>

于 2012-05-18T10:32:05.383 に答える
0

あなたはそれを行うためにこの他の方法を試すことができます:

  $('button.clear').click(function () {
    $('input').attr('value', '') ;// this clears google, but not yahoo
});
于 2012-05-18T09:53:17.380 に答える