0

ユーザーが [検索] ボタンをクリックしたときに、ボタンの HREF を、入力フィールドにあったテキストと選択リストから選択したオプションに設定しようとしています。

<div>
  <div>
    <input type="text" value="Keywords" style="width:206px" />
  </div>
  <div style="clear:both">
    <select>
      <option value="Test">Test</option>
    </select>
  </div>
  <div>
    <button><a href="">Search</a></button>
  </div>
</div>

入力ボックスの値と選択リストの選択値から href を設定するにはどうすればよいですか? このためのフォームを作成する必要があるかもしれませんが、もう少し単純なもので済むと思いました. 検索エンジンは既に構築されているため、検索文字列をコンパイルしてユーザーを適切なページにリダイレクトするだけです。

ありがとう!

編集 1

申し訳ありませんが、php を使用して選択リストをロードしていますが、選択リストには会社の機密情報が含まれているため、選択リストにデータが入力される方法のコードを提供できません。私はそれを含めるべきではありませんでした。

4

2 に答える 2

1

JavaScript を使用して、フォーム フィールドの値を取得し、必要に応じて処理できます。

select選択 IDとリンク ID を次のように仮定しますlink

var value = document.getElementById('select').value;
document.getElementById('link').setAttribute('href', value);
于 2013-03-19T16:34:32.677 に答える
1

PHP のみ (jQuery も Javascript も使用しない) を使用すると、フォームで送信ボタンを使用して次のように操作できます$_POST

最初にフォームを作成します(基本に落とし込みます):

<form method="post">    
    <input name="keywords" type="text" value="Keywords" style="width:206px" />
    <select name="options">
        <option value="Test">Test</option>
    </select>
    <input type="submit" name="ok" value="ok" />
</form>

2番目に、そのフォームを保持するphpページの先頭に:

if (isset($_POST['ok'])) { // submit has been clicked...

    if (isset($_POST[keywords])) { // there's input in keywords

        $keywords = $_POST['keywords'];
        // sanitize $keywords to prevent sql-injection

        // go to the page you want to call...
        // assuming there's no output before header ...
        // and $keywords is in the right format ...
        // and you retrieved $_POST['options'] to do sth with that, too

        header('Location: http://www.url.com/page.php?key=$keywords');
    } else exit('no keywords entered!');  
}
于 2013-03-19T16:44:55.533 に答える