0

これは機能していないようで、チェックをリセットします...チェックした場合にのみ更新したい

<iframe id="time" name="time" type="text/html" src="http://time.is/"></iframe>

<form id="url" onsubmit="" method="post">
<input type="text" name="target" id="target" value="http://time.is" size="40"></form>

<input type="checkbox" name="check1" />
$('.url').submit {
    if($('input[name="check1"]', this).is(':checked')) {
        document.getElementById(time).src = url;
    } else {
        alert('no');
    }
    return false;
});

http://jsfiddle.net/ZZe5X/57/

4

2 に答える 2

1

チェックボックスをフォームの外側に配置しますが、コードで呼び出すif ($('input[name="check1"]', this).is(':checked')) {ため、チェックボックスをフォームの内側に移動し、削除する必要がありますonsubmit=""

<div class="c">
   <iframe id="time" name="time" type="text/html" src="http://time.is/" frameborder="0" allowtransparency="true"></iframe>
</div>
<form id="url" method="post" target="time">
   <div>
      <input type="text" name="target" id="target" value="http://time.is" size="40">
      <input type="checkbox" name="check1" />
   </div>
</form>

<script>
   $(function(){
       $('#url').submit (function(){
          if ($('input[name="check1"]', this).is(':checked')) {
            document.getElementById('time').src = url;
          } else {
            alert('no');
          }
          return false;
       });
   });
</script>

http://jsfiddle.net/ZZe5X/66/

于 2012-08-25T02:15:08.557 に答える
0

複数のエラーがあります:

1.次のように、htmlフォーム内に送信ボタンを追加する必要があります(またはJavaScriptでフォーム送信をトリガーする方法が必要です)。

<input type="submit"/>

2. 変数urlが定義されていない場合、JavaScript に次の行を追加できます。

var url = $('#target').val();

3.

document.getElementById(time).src = url;

する必要があります

document.getElementById('time').src = url;

4.スクリプトの最初の行を

$('.url').submit {

$('#url').submit(function() {

5.Trinh Hoang Nhuが言ったように、チェックボックスはフォーム内にある必要があります。

if ($('input[name="check1"]', this)...

これが更新されたテストです

于 2012-08-25T02:36:16.830 に答える